[英](VBA 2010) SaveAs Filename
我需要帮助来弄清楚如何用vba在扫描仪填充三个单元格后在桌面上的文件夹中创建和保存文件。 想象一下杂货店扫描仪,它可以扫描产品。 从条形码中提取了三条信息,然后将其放置在三个单独的单元格中,例如A1 B1 C1,我如何获得VBA才能看到此信息将其复制并粘贴到保存的文件中? 这是我到目前为止所拥有的:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Range("A1").Value = "" And Not Range("B1").Value = "" And Not Range("C1").Value = "" Then
Dim workbookName As String
workbookName = "DiePunch.csv"
ActiveCell.Range("A1:C1").Select
Selection.Copy
Workbooks.Add
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = Fa
ActiveWorkbook.SaveAs Filename:="u:\CSV\Diepunch.csv", FileFormat:=xlCSV, CreateBackup:=False
ActiveWorkbook.Save
ActiveWindow.Close (SaveChange = False)
End If
End Sub
如果您可以发布自己的代码,我可能会更有帮助。
使用单元格(行,列)获取单元格中的值。 我记得在VBA中创建文件是通过Freefile和Open,Print#,Close语法完成的。
(这几乎是可用的代码,但不是100%)
Dim intHandle as Integer
intHandle = FreeFile()
Open "Filename.txt" for output as intHandle
Print #intHandle, Excel.Cells(Row,Column).Value
Close intHandle
这样就可以了
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Range("A1").Value = "" And Not Range("B1").Value = "" And Not Range("C1").Value = "" Then
Dim workbookName As String
workbookName = "whatever.xls"
ThisWorkbook.SaveAs "C:\" & workbookName
End If
End Sub
您需要确定如何命名文件。 如果您只是选择workbookName
为任意值,那么文件将以文件名的增量保存,例如
workbookName(1).xls
workbookName(2).xls
等等..
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.