Preciso salvar um arquivo com alguns espaços aleatórios no nome.
Está no Excel Vba. Tudo o que encontrei após uma hora de pesquisa na rede são sugestões para substituir o espaço por% 20 ou evitar espaços no nome do arquivo. Tentei brincar de adicionar aspas ou colocar% 20 sem sorte.
O arquivo produzido é para exportar para um sistema legado, alterar os nomes ou substituir o espaço por outro caractere não é uma opção .
Além disso, os espaços não estão necessariamente no mesmo local e eu gostaria de evitar colocar uma declaração Case para 20 nomes diferentes.
Aqui está o código que me causa problemas.
Savepath=range("a1").value
NameOfFile=range("a2").value
FullnameSave=savepath & "\"& NameOfFile & ".xlsm"
ActiveWorkbook.SaveAs Filename:=FullNameSave, FileFormat:=xlOpenXMLWorkbookMacroEnabled
Tudo funciona bem, exceto quando há um espaço em algum lugar no FileName.
Por exemplo, se o valor em A2 for StandardPrice, o arquivo será salvo corretamente, se for o preço padrão , recebo um erro (erro 1004 no método SaveAs). Além disso, se eu codificar o nome da seguinte forma, ele funcionará.
FullnameSave=savepath & "\" & "standard price" & ".xlsm"
Tentei adicionar 2,3,4 e até 5 aspas ao nome do arquivo, mas ele nunca retorna o formato correto (que seria algo como H: \ Pip_Import \ ImportTests2016-10 \ "standard price"