Macro in vba

Kratos

Con me cascate male! >_
#1
*premetto che il vba non lo conosco per niente*

Allora, ecco la macro:

Sub reale()

'

' reale Macro

'

'

    Do

    Selection.TypeText Text:="', '"

    Selection.MoveLeft Unit:=wdCharacter, Count:=4

    Selection.MoveDown Unit:=wdLine, Count:=1

    Selection.TypeText Text:="', '"

    Selection.MoveLeft Unit:=wdCharacter, Count:=4

    Selection.MoveDown Unit:=wdLine, Count:=1

    Loop

End Sub




Praticamente mi aggiunge ', ' davanti a ogni riga.

Esempio:

Pane

Latte

Gatto

Beve

Mangia

diverrà

', 'Pane

', 'Latte

', 'Gatto

', 'Beve

', 'Mangia
Il problema è che continua anche a fine documento.

Qualcuno sa come far fermare automaticamente la macro arrivata alla fine, oppure metterla in loop per sole 279893 volte?

Grazie mille in anticipo :)
 
Ultima modifica da un moderatore:

Kratos

Con me cascate male! >_
#3
Googla qualcosa tipo "vba end of file"
Che lo spiega abbastanza bene, ho trovato questo

da questo codice:

Dim TextLine As String
' Open file.
FileOpen(1, "TESTFILE", OpenMode.Input)
' Loop until end of file.
Do While Not EOF(1)
' Read line into variable.
TextLine = LineInput(1)
' Display result in a message box.
MsgBox("End of file reached at " & TextLine)
Loop
FileClose(1)


deduco che il mio dovrebbe diventare

Sub reale()

'

' reale Macro

'

'

    Do While Not EOF(1)

    Selection.TypeText Text:="', '"

    Selection.MoveLeft Unit:=wdCharacter, Count:=4

    Selection.MoveDown Unit:=wdLine, Count:=1

    Selection.TypeText Text:="', '"

    Selection.MoveLeft Unit:=wdCharacter, Count:=4

    Selection.MoveDown Unit:=wdLine, Count:=1

    Loop
    FileClose(1)
 
End Sub


Leggendo la pagina, ho trovato ancheche bisogna mettere un parametro obbligatorio:

FileNumber

           Obbligatorio. Valore Integer nel quale è incluso qualsiasi numero di file valido.

Penso che questo parametro sia quell'1 messo tra parentesi.

Anche io dovrei mettere 1?
 

Maze

Non mi ricordo cosa ci fosse scritto prima, ma #TD
Wiki
#4
Questo proprio non lo so. Ti ho detto di googlare quella cosa perché "end of file" è un concetto comune a tutti i linguaggi, di vba non so nulla.