这个论坛的第一篇文章,我是VBA的新手,所以我会尽可能详细。
我已经创建了一个宏来修改excel选项卡中的dxf绘图模板,然后将该数据写入新的dxf文件。我目前正在使用以下代码编写文本文件:
Dim Application2 As Variant
Range("A:A").Copy
Application2 = Shell("c:\windows\notepad.exe", vbMaximizedFocus)
AppActivate Application2
SendKeys "^(V)", True
SendKeys "%fa", True
SendKeys "%t", True
SendKeys "{DOWN 2}", True
SendKeys "%n", True
SendKeys savetarget, True
SendKeys "%s", True
SendKeys "%fx", True
我一直在尝试更改下面的方法,所以我不需要打开记事本并输入按键。
FN = FreeFile
Open savetarget For Output Shared As #FN
For iCntr = 1 To copy_endline
mystring = workspace.Range("A" & iCntr).Value
Print #FN, mystring
mystring = ""
Next iCntr
Close #FN
这有时会起作用,但它似乎以某种方式修改了格式,因此绘图变得无法读取Autocad。如果我手动复制行A中的数据并将其粘贴到记事本文档中,它可以正常工作。
答案 0 :(得分:0)
我可以使用此帖子中的代码解决我的问题: How to save particular column data of an excel worksheet to .txt file including line breaks in each cell content
我会感谢他们,但我没有足够的声誉。哈哈
这是从excel中的一列中的数据写入dxf文件。
我看起来像这样:Set fs = CreateObject("Scripting.FileSystemObject")
Set a = fs.CreateTextFile(SaveLocation & DWG_Name & ".dxf", True)
nLastrow = Cells(Rows.Count, "A").End(xlUp).Row
nFirstRow = 1
For N = nFirstRow To nLastrow
t = Cells(N, "A").Text
a.WriteLine (t)
Next
a.Close