Excel VBAマクロを使用して、Excelで選択範囲の最大10個のスペース区切り引数を印刷しようとしています。Excel VBA余分な改行が印刷ステートメントを介して挿入される
たとえば、選択範囲A1:A24 - (Val1、Val2、Val3、Val4など)に24の値があります 次のVBAコードを使用して、 "outfile \プログラムファイル(x86の)\ Googleの\クローム\アプリケーションの\ chrome.exe "VAL1 VAL2 .... Val10
"C:\プログラムファイル(x86の)\ GoogleのC"
として" .BAT \ Chrome \ Application \ chrome.exe "Val11 Val2 .... Val20
" C:¥Program Files(x86)¥Google¥Chrome¥Application¥chrome.exe "Val21 Val22 Val23 Val24
つまり、各行は最大10個の引数値(スペースで区切って)で印刷されます。その上何が何らかの形で(再び10空間のmaxは引数を区切っ)次の行に
を移動すべき、次のコードは (1)同一の行に出力を維持せず、 (2)に改行を挿入しています10番目の値ではなく、20番目、30番目、および他の値ではありません。
それは次のように生成します。
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"
Val1
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"
Val2
C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"
Val3
など....ここ
が私のコードです:
Private Sub GetChromeFile_Click()
Dim myFile As String, rng As Range, cellValue As Variant, i As Integer, j As Integer, a As Integer
myFile = "C:\Users\User1\" & "outfile.bat"
Set rng = Selection
Open myFile For Output As #7
a = 0
For i = 1 To rng.Rows.Count
Print #7, Chr(34) & "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" & Chr(34)
a = a + 1
cellValue = rng.Cells(i).Value
If (a = 10) Then
Print #7, " " & cellValue & vbNewLine
Else
Print #7, " " & cellValue
End If
Next i
Close #7
Range("F5").Value = " Done!"
End Sub
これは間違って行くこともどこ私に知らせてください。
おかげ
クイックテストを、 'Print#7、" "" C:\ ProgramFiles \ ... \ chrome.exe "" ''を試してみてください。 (言い換えれば、 'CHR()'の代わりに二重引用符を使用してください) – BruceWayne
@ BruceWayneの入力をありがとう。これはDavidZemensの答えに含まれています。あなたの助けに感謝! – user6337701