【发布时间】:2016-11-01 12:30:32
【问题描述】:
我有一个 Excel 文件,它在单元格 A1 中存储文件路径,并与函数 TODAY() 连接以更新该文件路径。
我还有一个批处理文件,可以将文件从一个文件夹移动到另一个文件夹。我目前使用这个更新的 excel 单元格来获取新的移动批处理命令。
如何使用 VBA 将单元格 A1 中的 Sheet1 中的数据自动复制到批处理文件中?
存储批处理文件 C:\Desktop\Batch\update.bat
这是来自下面 cmets 的示例代码,但我只是希望它从 Sheet 1 和 Cell A1 复制数据
Dim FilePath As String
Dim CellData As String
Dim LastCol As Long
Dim LastRow As Long
LastCol = ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Column
LastRow = ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row
FilePath = "C:\Batch\copy.bat"
Open FilePath For Output As #2
For i = 1 To LastRow
For j = 1 To LastCol
If j = LastCol Then
CellData = CellData + Trim(ActiveCell(i, j).Value)
Else
CellData = CellData + Trim(ActiveCell(i, j).Value) + ","
End If
Next j
Write #2, CellData
CellData = ""
Next i
Close #2
MsgBox ("Done")
【问题讨论】:
-
你有没有搜索过如何做到这一点?这很常见,而且遍布整个网络。 Here's one example(比你需要的多一点,但有元素)
-
我只想要一个单元格而不是一个范围。互联网上的许多都是一个范围,我是 VBA 新手
-
单个单元格也是 Range。
Range("A1") -
那么在您的示例中,您将如何编辑以下内容以仅引用 sheet1 和单元格 A1
-
@ScottHoltzman 我不得不使用 Print 而不是 Write
标签: excel vba batch-file updates