ฉันมีไฟล์ข้อความในรูปแบบเช่นนั้น
ข้อความ:
-- Begin
Line1
Line2
Line3
^
-- Begin
Line1
Line2
Line3
Line4
^
.
.
.
.
โดยพื้นฐานแล้วฉันต้องการใส่ Line1
ถึง Line(whatever)
ระหว่างบรรทัด --Begin
ถึง ^
ในอาร์เรย์ ดังนั้นแต่ละองค์ประกอบในอาร์เรย์จึงเป็นกลุ่มบรรทัด ตัวอย่างอาร์เรย์
Array = [("Line1" & vbNewLine & "Line 2") , ("Line1" & vbNewLine & "Line 2" & vbNewLine & "Line 3") ... ]
แต่โดยพื้นฐานแล้วต้องการเก็บแต่ละองค์ประกอบในอาร์เรย์ไว้ในเซลล์ (อาจไม่จำเป็นต้องใช้อาร์เรย์ด้วยซ้ำ) ...
ไม่แน่ใจว่าจะเป็นไปได้ใน excel VBA หรือไม่ แต่นี่คือสิ่งที่ฉันได้ลองมาแล้ว
Dim FileNum As Integer
Dim DataLine As String
Dim Lines As Variant
Dim j As Integer
FileNum = FreeFile()
Open "C:..." For Input As #FileNum
While Not EOF(FileNum)
Line Input #FileNum, DataLine
If InStr(DataLine, "-- Begin") > 0 Then
nextLinecounter = 1
ElseIf InStr(DataLine, "^") > 0 Then
nextLinecounter = 0
j = j + 1
ElseIf nextLinecounter = 1 Then
Lines(j) = DataLine + .. Somehow concatenate next lines into array
End If
Wend
ฉันติดอยู่กับวิธีข้ามบรรทัดถัดไปแล้วผนวกเข้ากับรายการปัจจุบัน ทำอย่างไรก็ได้ขอบคุณ