bitte ist es möglich, diesen Code in der klarsten Version zu schreiben? Ich habe Blätter von 1-20 und Werte von 1-20 und brauche diese Prüfung auf jedem Blatt, wenn ich Arbeitsmappe öffne.Listen ein-/ausblenden, wenn der Wert wahr ist - Code löschen (VBA, EXCEL)
Private Sub Workbook_Open()
If ThisWorkbook.Sheets("OPERACE_EXIST").Cells(2, 2).Value = True Then
Sheets("TP_OP_010").Visible = True
Else
Sheets("TP_OP_010").Visible = xlSheetVeryHidden
End If
If ThisWorkbook.Sheets("OPERACE_EXIST").Cells(3, 2).Value = True Then
Sheets("TP_OP_020").Visible = True
Else
Sheets("TP_OP_020").Visible = xlSheetVeryHidden
End If
If ThisWorkbook.Sheets("OPERACE_EXIST").Cells(4, 2).Value = True Then
Sheets("TP_OP_030").Visible = True
Else
Sheets("TP_OP_030").Visible = xlSheetVeryHidden
End If
Ich bekomme Fehler Index außerhalb des Bereichs ThisWorkbook.Sheets (SheetName). Visible = IIf (.Cells (i, 2) .Wert, xlSheetVisible, xlSheetVeryHidden) Meine Werte beginnend von B2 bis B20 – Nataniell
@Nataniell müssen Sie die Arbeitsblattnamen anpassen. Welche Version verwendest du? –
Es funktioniert jetzt. Ich vergesse, TP_OP_200 hinzuzufügen. Sorry und danke für die Hilfe :) – Nataniell