Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione HUAWEI Mate X7: un foldable ottimo, ma restano i soliti problemi
Recensione HUAWEI Mate X7: un foldable ottimo, ma restano i soliti problemi
Mate X7 rinnova la sfida nel segmento dei pieghevoli premium puntando su un design ancora più sottile e resistente, unito al ritorno dei processori proprietari della serie Kirin. L'assenza dei servizi Google e del 5G pesa ancora sull'esperienza utente, ma il comparto fotografico e la qualità costruttiva cercano di compensare queste mancanze strutturali con soluzioni ingegneristiche di altissimo livello
Nioh 3: souls-like punitivo e Action RPG
Nioh 3: souls-like punitivo e Action RPG
Nioh 3 aggiorna la formula Team NINJA con aree esplorabili più grandi, due stili di combattimento intercambiabili al volo (Samurai e Ninja) e un sistema di progressione pieno di attività, basi nemiche e sfide legate al Crogiolo. La recensione entra nel dettaglio su combattimento, build, progressione e requisiti PC
Test in super anteprima di Navimow i220 LiDAR: il robot tagliaerba per tutti
Test in super anteprima di Navimow i220 LiDAR: il robot tagliaerba per tutti
La facilità di installazione e la completa automazione di tutte le fasi di utilizzo, rendono questo prodotto l'ideale per molti clienti. Ecco com'è andata la nostra prova in anteprima
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 08-12-2007, 12:39   #1
john_revelator
Senior Member
 
L'Avatar di john_revelator
 
Iscritto dal: Jul 2007
Messaggi: 1092
[vba word] creare una tabella dentro tabella

Salve a tutti. Scusate il titolo un pò criptico.
Forse un'immagine sarà più d'aiuto.
In pratica devo creare un documento word con questo layout:

http://img134.imageshack.us/my.php?i...titolo1ds7.jpg

Il problema è che non ho la più pallida idea di come fare.

Il codice che ho scritto finora è questo

Codice:
Private Sub cmdCrea_Click()

Set objword = CreateObject("Word.Application")
objword.Visible = True
Set objdoc = objword.Documents.Add

Set objRange = objdoc.Range()
objdoc.Tables.Add objRange, 1, 2
Set objtable = objdoc.Tables(1)


strQueryName = "qrylingue"
Set objRST = Application.CurrentDb.OpenRecordset(strQueryName)
objtable.Cell(1, 1).Range.ParagraphFormat.Alignment = wdAlignParagraphRight
objtable.Columns(1).PreferredWidth = 150
objtable.Columns(2).PreferredWidth = 350


 objtable.Cell(1, 1).Range.Text = "Altra(e) lingua(e)"
 objtable.Cell(1, 1).Range.Font.Name = "Arial Narrow"
 objtable.Cell(1, 1).Range.Font.Size = 11
 objtable.Cell(1, 1).Range.Font.Bold = False
 

 objtable.Rows.Add
 objtable.Cell(2, 1).Range.Text = "Autovalutazione"
 objtable.Cell(2, 1).Range.Font.Name = "Arial Narrow"
 objtable.Cell(2, 1).Range.Font.Size = 11
 objtable.Cell(2, 1).Range.Font.Bold = False
 
 ' qua ci vanno le voci comprensione, parlato, scritto
 
 objtable.Rows.Add
 objtable.Cell(3, 1).Range.Text = "Livello europeo (*)"
 objtable.Cell(3, 1).Range.Font.Name = "Arial Narrow"
 objtable.Cell(3, 1).Range.Font.Size = 11
 objtable.Cell(3, 1).Range.Font.Bold = False
 
 ' qui ci vanno le voci ascolto, lettura (incolonnate sotto comprensione),
 ' interazione orale (sotto parlato) e produzione orale
 
 
i = 3

Do While Not objRST.EOF

      For k = 0 To objRST.Fields.Count - 1
        
        lingua = objRST.Fields("lingua")
        ascolto = objRST.Fields("cvep_ascolto")
        lettura = objRST.Fields("cvep_lettura")
        interazione = objRST.Fields("cvep_interazione")
        porale = objRST.Fields("cvep_produz_orale")
        pscritta = objRST.Fields("cvep_produz_scritta")
        
      Next k
      
      objtable.Rows.Add
      objtable.Cell(i + 1, 1).Range.Text = lingua
      objtable.Cell(i + 1, 1).Range.Font.Name = "Arial Narrow"
      objtable.Cell(i + 1, 1).Range.Font.Size = 10
      objtable.Cell(i + 1, 1).Range.Font.Bold = False
      
      ' qua andranno i valori del recordset
      
      i = i + 1
      
objRST.MoveNext
Loop

End Sub
Spero che qualcuno mi possa aiutare. E' l'ultima cosa che mi manca per il mio lavoro.
john_revelator è offline   Rispondi citando il messaggio o parte di esso
Old 14-12-2007, 16:25   #2
john_revelator
Senior Member
 
L'Avatar di john_revelator
 
Iscritto dal: Jul 2007
Messaggi: 1092
Scusate se uppo ma proprio non ne vengo fuori.
Dopo tanti sbattimenti ho fatto decisamente dei progressi. La tabella col layout mostrato in figura sono riuscito a crearlo ma probabilmente sbaglio qualcosa a livello concettuale perchè mi ritrovo con delle righe vuote alla fine del mio documento. Spero che qualcuno abbia la pazienza di dedicarmi 5 minuti e scaricare il file in questione.

http://files-upload.com/files/678289/word.zip

edit. Penso che il problema stia in questa linea di codice

objword.ActiveDocument.Tables.Add Range:=objword.ActiveDocument.Tables(1).Cell(2, 2).Range, numrows:=2 + contalingue, NumColumns:=5, _
DefaultTableBehavior:=wdWord9TableBehavior, AutoFitBehavior:= _
wdAutoFitFixed

che uso per creare la tabella all'interno della mia cella.

Il fatto è che ho dovuto inserire quest'istruzione 2 volte affinchè la tabella venisse creata.
Inserendola una volta soltanto non funziona

Ultima modifica di john_revelator : 14-12-2007 alle 16:29.
john_revelator è offline   Rispondi citando il messaggio o parte di esso
Old 17-12-2007, 11:16   #3
john_revelator
Senior Member
 
L'Avatar di john_revelator
 
Iscritto dal: Jul 2007
Messaggi: 1092
Nessuno che abbia mai avuto lo stesso problema?
john_revelator è offline   Rispondi citando il messaggio o parte di esso
Old 18-12-2007, 15:35   #4
john_revelator
Senior Member
 
L'Avatar di john_revelator
 
Iscritto dal: Jul 2007
Messaggi: 1092
john_revelator è offline   Rispondi citando il messaggio o parte di esso
Old 18-12-2007, 17:11   #5
john_revelator
Senior Member
 
L'Avatar di john_revelator
 
Iscritto dal: Jul 2007
Messaggi: 1092
Ho risolto e si trattava di una sciocchezza.
Semplicemente all'interno del mio codice per due volte eseguivo questa istruzione

objtable.Rows.Add

che era superflua.

Da qui le righe in più che venivano create.

Se qualcuno comunque mi sapesse spiegare la ragione per la quale per poter creare una tabella all'interno di una cella sono costretto ad eseguire questa istruzione due volte:

objword.ActiveDocument.Tables.Add Range:=objword.ActiveDocument.Tables(1).Cell(2, 2).Range, numrows:=2 + contalingue, NumColumns:=5, _
DefaultTableBehavior:=wdWord9TableBehavior, AutoFitBehavior:= _
wdAutoFitFixed

mi toglierebbe una grossa curiosità.
Grazie a tutti per l'attenzione.
john_revelator è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione HUAWEI Mate X7: un foldable ottimo, ma restano i soliti problemi Recensione HUAWEI Mate X7: un foldable ottimo, m...
Nioh 3: souls-like punitivo e Action RPG Nioh 3: souls-like punitivo e Action RPG
Test in super anteprima di Navimow i220 LiDAR: il robot tagliaerba per tutti Test in super anteprima di Navimow i220 LiDAR: i...
Dark Perk Ergo e Sym provati tra wireless, software via browser e peso ridotto Dark Perk Ergo e Sym provati tra wireless, softw...
DJI RS 5: stabilizzazione e tracking intelligente per ogni videomaker DJI RS 5: stabilizzazione e tracking intelligent...
Elon Musk ora guarda alla Luna: SpaceX p...
La Cina ha lanciato nuovamente lo spazio...
Blue Origin potrebbe realizzare il lande...
Artemis II: il prossimo Wet Dress Rehear...
Il nuovo HONOR 600 sta arrivando e avr&a...
La crisi delle memorie non coinvolger&ag...
Windows domina su Steam, ma molti utenti...
Per non incorrere in nuovi aumenti delle...
Cubi Z AI 8M visto da vicino, un mini-PC...
Datacenter nello Spazio, affascinante ma...
Social e minori, Butti apre al dibattito...
Tutte le offerte Amazon del weekend, sol...
Amazon spinge sull'usato garantito: 10% ...
TikTok rischia una maxi-multa in Europa:...
Bose su Amazon: QuietComfort SC over ear...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 20:38.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v