habe jetzt den Code Format in umgebenannt. ein Fehler ist noch vorhanden. Wenn ich den Monat auswähle sagt er immer das die Tabelle "Schicht" schon vorhanden ist. Klicke ich dann auf OK macht er aber die Tabelle mit dem richtigen namen.
Verstehe ich nicht.
Range. Clear macht noch Problem mit verbundenen Zellen. Weiß nicht ob man den löschen kann oder es eine Alternative gibt
Gruß Daniel
das mit der Tabelle Schicht kann ich nicht nachvollziehen.
Das Thema (überflüssige) verbundene Zellen wird/wurde im anderen Thread besprochen.
Leider fehlt mir der Zusammenhang, warum das gerade so (sperrig) gemacht werden muss.
Ich würde einfach ein Blatt als Vorlage herrichten, welches dann immer wieder kopiert werden kann.
06.10.2015, 06:41 (Dieser Beitrag wurde zuletzt bearbeitet: 06.10.2015, 06:59 von Daniel Albert.)
Hallo Uwe,
kommt bei dir keine Fehlermeldung wenn die Tabelle kopiert werden soll und der Tabellename geändert wird ? Muss denn der Monat der aus der Auswahlliste gewählt wird nicht in eine Variable zwischengespeichert werden damit dieser später durch ActiveSheet.Name eingefügt wird ?
Ich hatte damals leider den Fehler mit den verbunden Spalten gemacht. Aber auch wenn ich diese verbindungen Lösche kommt sporadisch die Fehlermeldung mit der Schicht, komischerweise nicht immer.
Das mit dem clear verstehe ich nicht ganz. haben diesen jetzt nochmal aktiviert und beim kopieren der Tabelle ist dann der bereich A bis E leer und der kopierte Inhalt fängt erst ab F an.
Eine Vorlage könnte ich auch machen und diese ausblenden. könnte man ja Vorlage nennen. Habe ich mal als Anhang angeheftet (ist ausgeblendet). Der Button ist in aktive Mitglieder
geht es das die Kopierte Tabelle ganz nach rechte also ans Ende gestellt wird ?
Nachtrag, warum den ganzen Aufwand:
Ich selber komme mit allen gut zurecht, Tabelle per Hand kopieren, Namen ändern usw.
Diese Tabelle sollen aber jetzt die Angestellten, nutzen und da muss ich es Narrensicher aufbauen.
Private Sub ComboBox1_Change()
Dim strMonat As String
Dim lngSheet As Long
If ComboBox1.ListIndex > -1 Then
strMonat = Format(ComboBox1.Text, "mmmm yyyy")
For lngSheet = 1 To Sheets.Count
If Sheets(lngSheet).Name = strMonat Then
MsgBox "Es gibt schon ein Blatt namens " & strMonat & "!", vbInformation
strMonat = ""
ComboBox1.ListIndex = -1
Exit For
End If
Next lngSheet
If Len(strMonat) Then
Application.ScreenUpdating = False
With Sheets("Vorlage")
.Visible = -1
.Copy After:=Sheets(Sheets.Count)
.Visible = 2
End With
With Sheets(Sheets.Count)
.Range("D1").NumberFormat = "mmmm yyyy"
.Range("D1").Value = ComboBox1.Text
.Name = Format(ComboBox1.Text, "mmmm yyyy")
End With
Unload Me
Application.ScreenUpdating = True
End If
End If
End Sub
Wegen der Namen solltest Du mal oben unter Formeln den Namenmanager aufrufen und das Chaos bereinigen.
In der Beispielmappe habe ich es schon getan.
Gruß Uwe
Folgende(r) 1 Nutzer sagt Danke an Kuwer für diesen Beitrag:1 Nutzer sagt Danke an Kuwer für diesen Beitrag 28 • Daniel Albert
Danke Uwe, jetzt funktioniert es, cool. Den Namensmanager habe ich aufgräumt, lag wahrscheinlich an dem vielen gebastel in der letzten Zeit. Jetzt muss ich nur noch die anderen Markos bei deinem anheften damit die Formeln noch eingefügt werden und schon läuft es.
(06.10.2015, 21:03)Daniel Albert schrieb: Jetzt muss ich nur noch die anderen Markos bei deinem anheften damit die Formeln noch eingefügt werden und schon läuft es.
ich hatte mir die Vorlage nicht genau angesehen. Aber warum müssen dann noch Formeln eingefügt werden? Die sollten doch schon in der Vorlage sein?!