
Ich möchte die Arbeitsblätter basierend auf zwei verschiedenen Variablen umbenennen, einem Teil des Dateinamens und einem Teil des Inhalts einer Zelle
Ich werde insgesamt fünf Arbeitsblätter pro Datei haben und sie später als PDFs speichern, sobald die Daten erfasst und eingegeben sind.
Vom Dateinamen werde ich die ersten 3 oder 4 numerischen Zeichen verwenden. (Bild 1)
Aus Zelle I1 verwende ich die Wörter vor „UPHOLSTERY“ oder, je nach Wort, ungefähr die ersten 5 bis 11 Zeichen. (Bild 2)
Bild 3 zeigt die Endergebnisse.
Antwort1
Geben Sie in jede Arbeitsblattzelle I1
die Formel ein:
=MID(CELL("filename",A1),FIND("]",CELL("filename",A1))+5,255)&MID(CELL("filename",A1),FIND("[",CELL("filename",A1))+4,FIND("]", CELL("filename",A1))-FIND("[",CELL("filename",A1))-9)
Antwort2
Hier ist ein Makro, das den Zweck erfüllen sollte
Sub worksheetRename()
Dim wb As Workbook
Dim ws As Worksheet
Set wb = ThisWorkbook
'split the name of the file into words
na = split(wb.Name, " ")
'loop thru all worksheets
For i = 1 To wb.Worksheets.Count
Set ws = wb.Sheets(i)
'split cell A1 into words
nb = split(ws.Cells(1,1), " ")
'set name of worksheet
ws.Name = na(0) & " " & nb(0)
Next i
a = MsgBox("Done", vbInformation)
End Sub