
Option Explicit
Function LeggiTxt()
Dim myPath As String
Dim myFileTxt As String
Dim myTxt As String
Dim r As Long
Dim myId
myId = InputBox("Digita l'ID da cui partire", "Info")
'verifico il dato inserito
If myId = "" Then
MsgBox "Valore non inserito"
GoTo Fine:
ElseIf Not IsNumeric(myId) Then
MsgBox "Valore non valido"
GoTo Fine:
End If
'converto in numero
myId = CDbl(myId)
r = 1 'riga inizio inserimento dati
myPath = "c:" 'TUA CARTELLA
myFileTxt = "prova.txt" 'TUO FILE
'apro il file in lettura
Open myPath & myFileTxt For Input As #1
Do Until EOF(1)
Input #1, myTxt
If myTxt = "###" Then
Cells(r, 1) = myId
myId = myId + 1
Else
Cells(r, 1) = myTxt
End If
r = r + 1
Loop
Close #1
MsgBox "Fine elaborazione"
Fine:
Exit Function
End Function
|
GoTo Fine:
'verifico il dato inserito
If myId = "" Then
MsgBox "Valore non inserito"
Exit Function
ElseIf Not IsNumeric(myId) Then
MsgBox "Valore non valido"
Exit Function
End If
Option Explicit
Sub test()
Dim i As Integer
'Costrutto While
'Esegue una serie di istruzioni finché la valutazione di una determinata condizione dà come risultato True.
i = 0
While i < 10
i = i + 1
Debug.Print i
Wend
'Costrutto Do...Loop
'Ripete un blocco di istruzioni finché la valutazione di una condizione dà come risultato True o fino a quando non dà come risultato True.
'Si deve usare Exit Do per uscire dal ciclo infinito
i = 0
Do
i = i + 1
Debug.Print i
If i = 10 Then Exit Do
Loop
'Costrutto Do...Loop Until
'Il raggiungimento della condizione è garantito da Until (finchè la condizione è vera)
i = 0
Do
i = i + 1
Debug.Print i
Loop Until i = 10
'Costrutto Do...Loop While
'Il raggiungimento della condizione è garantito con While (nel mentre la condizione rimane vera)
i = 0
Do
i = i + 1
Debug.Print i
Loop While i < 10
End Sub |
