如何使用命令按钮自动保存为单元格值单击Vba Excel?
想要添加第二个功能,点击Excel中的命令按钮和VBA代码 - 第一个函数将数据从工作表1(订单)填充到工作表2中的数据库日志。寻找第二个要执行的功能是从订单中自动保存单元格值。谢谢!如何使用命令按钮自动保存为单元格值单击Vba Excel?
Private Sub CommandButton1_Click() Dim OrderDate As String, PONumber As String, Vendor As String, ShipTo As String, SKU As String
Dim R As Long, LastSKURow As Long, NextDBRow As Long, OFrm As Worksheet, DB As Worksheet
Set OFrm = Worksheets("Order Form 1")
Set DB = Worksheets("Database")
OrderDate = OFrm.Range("B3")
PONumber = OFrm.Range("D3")
Vendor = OFrm.Range("B7")
ShipTo = OFrm.Range("D7")
LastSKURow = OFrm.Cells(OFrm.Rows.Count, "F").End(xlUp).Row
For R = 3 To LastSKURow
SKU = OFrm.Range("F" & R).Value
NextDBRow = DB.Cells(DB.Rows.Count, "A").End(xlUp).Row + 1
DB.Range("A" & NextDBRow).Value = OrderDate
DB.Range("B" & NextDBRow).Value = PONumber
DB.Range("C" & NextDBRow).Value = Vendor
DB.Range("D" & NextDBRow).Value = ShipTo
DB.Range("E" & NextDBRow).Value = SKU
Next R
Application.ScreenUpdating = False
Dim Path As String
Dim filename As String
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF,
Path = "C:\PDF\"
filename = OFrm.Range("D3")
OFrm.SaveAs filename:=Path & filename & ".pdf", FileFormat:=xlPDF
OpenAfterPublish:=False
Application.ScreenUpdating = True
End Sub
回答:
通过自动保存您是否意味着它可以保存excel工作簿?如果是的话,你可以添加这样的事情...
Application.ActiveWorkbook.Save
如果这是你正在寻找没有什么,请让我知道...
回答:
对不起它了几天,我一直很忙。
根据你以前的评论,我写的这个子程序应该可以解决你的问题。我选择将文件保存为pdf,假设您已将打印区域设置为表单。我选择了pdf,因为您声明它是一个订单,并且假设表单将在稍后编辑。我选择了它,因为它是一个表单,并且可能有一些计算的字段附加到另一个工作表,如果您分离工作表,这将不起作用。但是,如果您决定只需要一份工作表的副本,我也包含了该代码。你所需要做的就是用注释填写区域,并将这个功能附加到命令按钮:)。如果您想了解有关如何执行此操作的其他信息,请告诉我们。
对于PDF的功能,你可以在这里看到的信息:https://msdn.microsoft.com/en-us/vba/excel-vba/articles/workbook-exportasfixedformat-method-excel
对于另存为信息,您可以在这里看到的信息:https://msdn.microsoft.com/en-us/vba/excel-vba/articles/worksheet-saveas-method-excel
Public Sub savefile() Dim wb As Workbook
Dim ws As Worksheet
Dim rngfilename As Range
Dim strSavePath As String
'assumptions:
'you are saving the file to a fixed location and the name of the file within the range is continually changing
'you have set the print areas
Set wb = Application.ActiveWorkbook
Set ws = wb.ActiveSheet
Set rngfilename = ws.Range("A1") 'the range that contains your filename
strSavePath = "C:/" 'the location that you would like to save your file
'ensure that there is a value within the filename field declared above
If rngfilename.Value = "" Or Len(rngfilename) = 0 Then
MsgBox "You have not entered a filename"
Exit Sub
End If
'if you do not have print areas set ignore print areas to true in the function bellow
ws.ExportAsFixedFormat xlTypePDF, strSavePath & rngfilename.Value, xlQualityStandard
'for the save as function
'ws.SaveAs strSavePathe & rngfilename.Value
End Sub
以上是 如何使用命令按钮自动保存为单元格值单击Vba Excel? 的全部内容, 来源链接: utcz.com/qa/258621.html