แนะนำด้วยครับ macro vba
Posted: Fri Oct 03, 2014 1:35 pm
ขอรบกวนถามครับ
ผมอยากให้บรรทัดในช่อง excel E2-5 ถ้าไม่ได้พิมข้อความ ก็ไม่ต้องให้มันเขียนออกมาอ่ะครับ
อย่างในภาพนี้ เส้นน้ำเงินคือถูก แต่เส้นแดงถ้าไม่เขียนก็ไม่ต้องพิมออกมา ขอบคุณครับ
------------
นี่โค้ดที่เขียนครับ แก้ต่อจากนี้อย่างไรดีครับ
ผมอยากให้บรรทัดในช่อง excel E2-5 ถ้าไม่ได้พิมข้อความ ก็ไม่ต้องให้มันเขียนออกมาอ่ะครับ
อย่างในภาพนี้ เส้นน้ำเงินคือถูก แต่เส้นแดงถ้าไม่เขียนก็ไม่ต้องพิมออกมา ขอบคุณครับ
------------
นี่โค้ดที่เขียนครับ แก้ต่อจากนี้อย่างไรดีครับ
Code: Select all
Sub cardconfig()
Call exportProject
End Sub
Function exportProject()
'Dim fso As Object'
Dim MyOutput As Object
Set fso = CreateObject("Scripting.FileSystemObject")
Set MyOutput = fso.CreateTextFile("d:\testMacro\cardconfig.txt", True, True) 'Unicode=True'
MyOutput.WriteLine ("{")
MyOutput.WriteLine (ChrW(34) & "Graph" & ChrW(34) & ":[")
For Y = 2 To 5
MyOutput.WriteLine ("{")
For X = 1 To 5
keyValue = Cells(Y, X)
If X = 1 Then
MyOutput.WriteLine (ChrW(34) & "ID" & ChrW(34) & ":" & keyValue & ",")
ElseIf X = 2 Then
MyOutput.WriteLine (ChrW(34) & "No" & ChrW(34) & ":" & keyValue & ",")
ElseIf X = 3 Then
MyOutput.WriteLine (ChrW(34) & "Money" & ChrW(34) & ":" & keyValue & ",")
ElseIf X = 4 Then
MyOutput.WriteLine (ChrW(34) & "Name" & ChrW(34) & ":" & ChrW(34) & keyValue & ChrW(34) & ",")
ElseIf X = 5 Then
MyOutput.WriteLine (ChrW(34) & "Other" & ChrW(34) & ":" & ChrW(34) & keyValue & ChrW(34))
End If
Next X
If Y = 5 Then
MyOutput.WriteLine ("}")
Else
MyOutput.WriteLine ("},")
End If
Next Y
MyOutput.WriteLine ("]}")
MyOutput.Close
End Function