Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 如果单元格包含任何文本调用宏,则调用宏2_Excel_Vba_Export To Pdf - Fatal编程技术网

Excel 如果单元格包含任何文本调用宏,则调用宏2

Excel 如果单元格包含任何文本调用宏,则调用宏2,excel,vba,export-to-pdf,Excel,Vba,Export To Pdf,我正在使用Excel制作一个现场发票系统,我几乎已经完成了,只是做了一些收尾工作 我有一个宏,可以根据所做的操作将图纸导出为PDF。但是我被卡住了。我有两张票和两张票。我需要做的是使用VBA来确定是否使用了TICKET2,然后它将TICKET和TICKET2以及其他一些表单导出为PDF。如果未使用票证2,则它仅将票证与其他纸张一起导出 当前,如果TICKET2有一个条目,则TICKET S49上的一个单元格返回继续第2页: =IF(TICKET2!C11>0,"Continue to Pa

我正在使用Excel制作一个现场发票系统,我几乎已经完成了,只是做了一些收尾工作

我有一个宏,可以根据所做的操作将图纸导出为PDF。但是我被卡住了。我有两张票和两张票。我需要做的是使用VBA来确定是否使用了TICKET2,然后它将TICKET和TICKET2以及其他一些表单导出为PDF。如果未使用票证2,则它仅将票证与其他纸张一起导出

当前,如果TICKET2有一个条目,则TICKET S49上的一个单元格返回继续第2页:

=IF(TICKET2!C11>0,"Continue to Page 2","")
然后我尝试使用该单元格通过IF/Then调用两个宏中的一个

Sub Export()
Dim page2 As String
page2 = Worksheets("TICKET").Range("S49")
If page2 = "Continue to Page 2" Then Call Save2page Else
    Call Save1page
End If
End Sub
这就是我被困的地方。

这条线就是问题所在

page2 = Worksheets("TICKET").Range("S49")
它返回的范围不是字符串

您需要访问单元格的值

page2 = Worksheets("TICKET").Range("S49").Value

我经常说的是简化一些事情,比如

=IF(TICKET2!C11>0,1,0)
如果这样做,就更容易避免犯区分大小写或双空格之类的错误

但在这之后,剩下的都是直截了当的

Sub Export()
 Dim page2 As Integer
 page2 = Sheets("TICKET").Range("S49").Value
 If page2 = 1 Then 
    Call Save2page 
    Else
    Call Save1page
 End If
End Sub