通过在VBA中使用数组读取后续文本文件

时间:2019-01-28 08:24:47

标签: excel vba

我正在尝试编写VBA代码以读取值并将其从4000个不同的文本文件写入所需的位置。

例如,优良名称像NACA63220_1.30_17_CD.txtNACA63220_1.05_12_CL.txt 以此名称,值1.30会发生变化,17会发生变化,而CD会变成CL等。

我想创建循环,以便从这些文件中逐一读取和粘贴我想要的值。

Mach = Array ("0.2_", "0.6_", "0.9_", "1.05_", "1.30_")
Alpha = Array(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20)
Letter = Array("_CD", "_CL", "_CM")

strFile = D:\Database\NACA63220_ + Mach(5) + Alpha(18) + Letter(1) .txt

我希望通过循环来实现这样的事情,以便在这种情况下,这个strFile变成D:\Database\NACA63220_ 1.30_17_CD.txt,然后我就可以继续我的代码了。

1 个答案:

答案 0 :(得分:0)

您需要用&而不是+连接字符串(仅用于计算)。同样,您的字符串也需要用引号""括起来。

strFile = "D:\Database\NACA63220_" & Mach(5) & Alpha(18) & Letter(1) & ".txt"

请注意,根据数组的定义方式,计数从零0开始而不是1。因此,最后一项是Mach(4)而不是Mach(5)。在这种情况下...

strFile = "D:\Database\NACA63220_" & Mach(4) & Alpha(17) & Letter(0) & ".txt"

应给出期望的结果D:\Database\NACA63220_ 1.30_17_CD.txt