AW: Hier der Code in eins!
30.08.2022 15:12:34
T
Hallo Herbert.
Super - vielen Dank - werde ich gleich mal versuchen nachher!
Ich bin jetzt mal folgenden Weg gegangen, aber es hängt noch an einer Stelle:
Ich rufe eine UserForm auf und lasse mir die Tabellenblätter anzeigen:
Private Sub UserForm_Initialize()
Dim i As Long
Me.ComboBox1.Clear
For i = 1 To Sheets.Count
Me.ComboBox1.AddItem Sheets(i).Name
Next
Me.ComboBox1.Value = ActiveSheet.Name
End Sub
Private Sub ComboBox1_Change()
ActiveWorkbook.Sheets(Me.ComboBox1.Value).Activate
End Sub
Danach würde ich gerne, dass Tabellenblatt, welches angewählt ist übergeben in das Makro welches kopiert (so wäre ich absolut unabhängig vom User - dann kann er es auch 17 mal kopieren wenn er mag):
Sub test_freischalten()
Application.ScreenUpdating = False
Range("C9").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=testblatt!$L$10:$L$105"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
Selection.AutoFill Destination:=Range("C9:C16"), Type:=xlFillDefault
Range("C9:C16").Select
Selection.AutoFill Destination:=Range("C9:N16"), Type:=xlFillDefault
Range("C9:N16").Select
Range("C9").Select
Application.ScreenUpdating = True
End Sub
Kannst du mir da evtl sagen wie ich die Variable deklinieren müsste? Habe alles versucht, bin bisher gescheitert....