[Excel-VBA] Tabellenblatt in Abhängigkeit einer Auswahl benennen
Gepostet am: Nov 16, 2012 6:53:58 PM
Gerade bei umfangreichen Excel-Arbeitsmappen, die zur Datensammlung dienen kann es sinnvoll sein, dass Tabellenblätter automatisch benannt werden. Im oberen Bereich der Tabellenblätter gibt es 3 Auswahlfelder auf Basis derer der Dateinamen generiert wird.
Textfeld
Private Sub Workbook_SheetActivate(ByVal sh As Object) Call Arbeitsblatt_benennen(sh)End SubPrivate Sub Workbook_SheetDeActivate(ByVal sh As Object) Call Arbeitsblatt_benennen(sh)End SubPrivate Sub Arbeitsblatt_benennen(sh As Object) Dim myWorksheet As Worksheet Set myWorksheet = sh Dim myGeschaeftsfeld As String Dim myFunction As String Dim myUnternehmen As String myGeschaeftsfeld = Left(myWorksheet.Cells(2, 2).Value, 2) myFunction = Left(myWorksheet.Cells(3, 2).Value, 2) myUnternehmen = Left(myWorksheet.Cells(4, 2).Value, 1) Dim tmpString As String tmpString = myGeschaeftsfeld & "-" & myFunction & "-" & myUnternehmen 'prüfen, ob das Tabellenblatt schon existiert Dim i As Integer Dim WS_count As Integer Dim bExists As Boolean bExists = False WS_count = ActiveWorkbook.Worksheets.Count For i = 1 To WS_count If ActiveWorkbook.Worksheets(i).Name = tmpString Then Exit Sub End If Next myWorksheet.Name = tmpString End Sub