我正在使用几乎完成的Excel制作“现场发票”系统,只是做了一些最后的修饰。
我有一个宏,可以根据完成的工作将图纸导出为PDF。但是我被困住了。我有两张“ TICKET”和“ TICKET2”。我需要做的是使用VBA来确定是否使用了“ TICKET2”,然后将“ TICKET”和“ TICKET2”(以及其他一些表)导出为PDF。如果未使用“ TICKET2”,则仅导出“ TICKET”(以及其他工作表)。
当前,如果TICKET2中有一个条目,则TICKET(S49)上的单元格将返回“ Continue to Page 2”:
=IF(TICKET2!C11>0,"Continue to Page 2","")
然后,我尝试使用该单元格通过IF / THEN调用2个宏之一
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
这就是我被困住的地方。
答案 0 :(得分:0)
这是问题所在
page2 = Worksheets("TICKET").Range("S49")
它返回一个不是字符串的范围。
您需要访问单元格的值
page2 = Worksheets("TICKET").Range("S49").Value
答案 1 :(得分:-1)
我总是说的是简化
=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