2017-01-16 296 views
0

我使用单元格作为文件路径和文件名来保存我的工作簿副本。Excel VBA使用变量从单元格中保存路径/名称

下面是我现在使用的代码,但它会在每个单元格之间放置空格。 注意只有ActiveSheet.Range细胞将有被空白

Dim NewWb As Workbook 
sFile = Control_Sheet_VB.Range("H2") & "\" & ActiveSheet.Range("H8") & " " & ActiveSheet.Range("E10") & " " & ActiveSheet.Range("D14") & " - Ticket #" & Control_Sheet_VB.Range("B2") & Control_Sheet_VB.Range("C2") & ".xlsm" 
Set OldWb = ActiveWorkbook 
OldWb.SaveCopyAs sFile 
Set NewWb = Workbooks.Open(sFile) 

的可能性我怎样才能使这样即使有些被用作文件名格是空白的,然后它剂量不会把多余的空间在文件名

+0

周围是否有例如,每个参考'修剪(ActiveSheet.Range(“H8”))'解决你的问题? –

回答

2

你可能是这样的:

sFile = Control_Sheet_VB.Range("H2") & "\" & _ 
     IIf(ActiveSheet.Range("H8") <> "", ActiveSheet.Range("H8") & " ", "") & _ 
     IIf(ActiveSheet.Range("E10") <> "", ActiveSheet.Range("E10") & " ", "") & _ 
     IIf(ActiveSheet.Range("D14") <> "", ActiveSheet.Range("D14") & " ", "") & _ 
     " - Ticket #" & Control_Sheet_VB.Range("B2") & _ 
     Control_Sheet_VB.Range("C2") & ".xlsm" 
相关问题