我寫過這個宏,它應該循環遍歷一個範圍,如果該範圍包含一個數字,然後將偏移單元複製到一個csv或另一個表。目前,當我執行代碼時,它會突破,但是在我的文本文件中沒有輸出,也沒有任何錯誤消息。vba遍歷範圍寫入csv
我不知道發生了什麼事?任何指針?請幫助謝謝。
Dim rng As Range, cell As Range
Dim ofset As String
Dim filepath As String
Set rng = Range("F1:F100")
For Each cell In rng
If IsError(cell) Then
'MsgBox "cell " & cell.Address & " contains error"
ElseIf cell.Value > 0 Then
ofset = cell.Offset(, -2).Resize(, 2).Select 'gives you B1:C1
' copy this range to text file
filepath = Application.DefaultFilePath & "\authors.csv"
Open filepath For Output As #2
Write #2, cell.Value & ofset
Close #2
End If
Next cell
MsgBox "The values have been copied"
你在這段代碼的最後有'Next'語句嗎? –
你期望得到什麼結果:'ofset = cell.Offset(,-2).Resize(,2).Select'考慮到'Dim ofset As String'? –
我以爲id把cell.offset值放在一個變量中。我覺得更容易操縱?是的,最後有一個聲明@Portland Runner – user1810449