我正在尝试使用 Excel 创建一个 INI 文件,我遇到的问题是我希望对其进行格式化。 假设我有一列 IP 地址,我希望将该列导出到 INI 文件,但它需要在 IP 地址之前和之后添加文本。但无论我尝试什么,都不起作用或没有找到任何解决方案。
注意:我对 VBA 完全是菜鸟。
我的 INI 文件应该看起来像这样:
[Transfer-List]
Status=Inactive
CountStation=255
Station1=XXX.XXX.XXX.XXX;VKDGenerator
Station2=YYY.YYY.YYY.YYY;VKDGenerator
Station3=ZZZ.ZZZ.ZZZ.ZZZ;VKDGenerator
Station4=AAA.AAA.AAA.AAA;VKDGenerator
Station5=...
...
...
由于我想创建一个 INI 文件,因此前三行、Station n° 和 VKDGenerator 是必需的。
感谢您对我的耐心和所有帮助;)
打开文件进行输出,然后扫描电子表格并打印每一行。
Option Explicit
Sub CreateINI()
Const SUFFIX = ";VKDGenerator"
Const ININAME = "Filename.INI"
Dim i As Long, n As Long, ini As String, ff
'open text file
ini = ThisWorkbook.Path & Application.PathSeparator & ININAME
ff = FreeFile
Open ini For Output As #ff
With ThisWorkbook.Sheets("Sheet1")
' number of lines on sheet
n = .Cells(.Rows.Count, "A").End(xlUp).Row
' header
Print #ff, "[Transfer-List]" & vbCrLf & _
"Status=Inactive" & vbCrLf & _
"CountStation=" & n
' station IP address
For i = 1 To n
Print #ff, "Station" & i & "=" & Trim(.Cells(i, 1)) & SUFFIX
Next
End With
Close #ff
MsgBox n + 3 & " lines written to " & ini, vbInformation
' open notepad++
Call Shell("C:\Program Files\Notepad++\notepad++.exe " & ini, 1)
End Sub