2017-01-16 2 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

ли окружающие каждую ссылку с, например, 'Trim (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" 
Смежные вопросы