从我的文件名和表名删除.txt

请帮助家伙! 在下面的代码部分(这是很好的顺便说一句),我一直在实际的文件名和表名.txt。 我一直在看我需要拿出来解决这个问题,但是我不能解决这个问题。 我对VBA很新,所以我尽我所能请帮忙?

'Opens the folder to location to select txt file fileToOpen = Application.GetOpenFilename("Text Files (*.txt), *.txt") If fileToOpen <> False Then Workbooks.OpenText fileName:=fileToOpen, _ DataType:=xlDelimited, Tab:=True End If 'Creates the file name based on txt file name fileName = Mid(fileToOpen, InStrRev(fileToOpen, "\") + 1) 'Creates the sheet name based on the active txt file sheetName = Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 4) 'Rename the original text file ActiveWorkbook.SaveAs ("S:\MERIT OUTPUTS FOLDER\MSI Recruitment Limited\" & "DNU_" & fileName & ".txt") 

也许你可以使用sheetname作为文件名,因为你已经从sheetname中删除了“.txt”。

 'Opens the folder to location to select txt file fileToOpen = Application.GetOpenFilename("Text Files (*.txt), *.txt") If fileToOpen <> False Then Workbooks.OpenText fileName:=fileToOpen, _ DataType:=xlDelimited, Tab:=True End If 'Creates the sheet name based on the active txt file sheetName = Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 4) 'Rename the original text file ActiveWorkbook.SaveAs ("S:\MERIT OUTPUTS FOLDER\MSI Recruitment Limited\" & "DNU_" & sheetName & ".txt") 

您可以使用正则expression式并提取没有扩展名的文件名并使用它

 public String extractFileName(String fullPathFile){ try { Pattern regex = Pattern.compile(EXTRACT_FILE_NAME_REGEX); Matcher regexMatcher = regex.matcher(fullPathFile); if (regexMatcher.find()){ return regexMatcher.group(1); } } catch (PatternSyntaxException ex) { LOG.info("extractFileName::pattern problem <"+fullPathFile+">",ex); } return fullPathFile; }