0
此处新增内容并且正在寻找一种从使用逗号作为分隔符的文本文件中读取的方法。我想将文本分配给一个变量并在程序中使用它。例如,从文本文件中的一行将是VBA读取分隔文本
45.325, Variable Description
而且我需要将代码中的变量名称分配45.325。我找到了一个使用oFS.Readline的方法,但是它读取整行,而我只需要它读取(不包括)逗号。
感谢您的答复 本
此处新增内容并且正在寻找一种从使用逗号作为分隔符的文本文件中读取的方法。我想将文本分配给一个变量并在程序中使用它。例如,从文本文件中的一行将是VBA读取分隔文本
45.325, Variable Description
而且我需要将代码中的变量名称分配45.325。我找到了一个使用oFS.Readline的方法,但是它读取整行,而我只需要它读取(不包括)逗号。
感谢您的答复 本
几种不同的选项可供选择,这取决于你想要做什么。
如果您只需要逗号前的第一个值,则可以使用旧的OPEN FOR INPUT方法。该“输入#FF,FirstValue”的字面加载到该变量遇到的(直到达到一个逗号)的第一个值:
Public Sub SampleRead(TextFile As String)
Dim ff As Integer, i As Long
Dim FirstValue As Double
Dim VariableName As String
ff = FreeFile
Open TextFile For Input As #ff
Do Until EOF(ff)
i = i + 1
Input #ff, FirstValue
Input #ff, VariableName
Debug.Print "Variable Name: " & VariableName & " has a value of: " & FirstValue & " on line #" & i
Loop
Close #ff
End Sub
或者,你可以使用斯普利特()来解析文本行您可以使用。阅读文本(您可以使用“线路输入”来做同样的事情),以便将它们分解为特定变量。
可能重复[如何打开与VBA宏的CSV文件](http://stackoverflow.com/questions/2600876/how-to-open-csv-file-with-vba-macro) –
@SashaSalauyou如何这是一个重复的?在***全部***? – miradulo
作为代码块处理数据 – pagid