Hey, ich habe ein Schulprojekt und muss es bis morgen abgeben, ich bin zwar fertig aber ich möchte paar Extras einbauen. Da habe ich ein Problem wo ich nicht weiter komme.
Ich habe bei der Tabelle 1 Button, die Funktion sollte so sein:
Die Tabelle wird kopiert und auf der kopierten Tabelle sollten bestimmte Felder die Inhalte leeren, dann sollte es auf der ersten Tabelle den Namen umändern auf den Namen der Schüler.
Problem: Beim kopieren wird eine neue Schaltfläche über dem Buttons kopiert und das hindert daran einen weitere Tabelle zu kopieren und müsste diesen Button manuell löschen.
UND
ich will die Tabelle umbenennen in dem Schüler der eingetragen worden ist. Das was ich in mehreren klammern gesetzt habe will ich den Schüler kopieren.
Screenshot 1 = wie es vorher aussieht
Screenshot 2 = wie es danach aussieht und was mein 1. Problem ist
(08.03.2020, 11:56)Deniz23 schrieb: Kann man aber einen Button hinzufügen dass es mit jeder Tabelle funktioniert?
Der Button ist in der Kopie ja schon vorhanden und muss nicht neu erstellt werden.
Nur das Makro müsste angepasst werden.
Vielleicht so:
Sub NeuerSchüler()
'
' NeuerSchüler Makro
'
With ActiveSheet
.Copy Before:=Sheets(1)
ActiveSheet.Range("B7,E7,B11:C25") = ""
.Name = .Range("B7").Value
End With
End Sub
ist das so verlangt, so wie Du es machst, oder kannst Du frei entscheiden, wie Du zum Ergebnis kommst.
Wenn Du frei entscheiden kannst, dann wäre eine andere Vorgehensweise besser.
Es wäre besser die Schüler Tabelle leer als Vorlagen Tabelle zu haben.
Dann aus einer andern Tabelle heraus diese Tabelle zu kopieren und mit dem Namen eines ausgewählten Schüler zu benennen und die Zellen entsprechen auch zu befüllen.
08.03.2020, 13:00 (Dieser Beitrag wurde zuletzt bearbeitet: 08.03.2020, 13:01 von Deniz23.)
(08.03.2020, 12:19)Kuwer schrieb: Der Button ist in der Kopie ja schon vorhanden und muss nicht neu erstellt werden.
Nur das Makro müsste angepasst werden.
Vielleicht so:
Sub NeuerSchüler()
'
' NeuerSchüler Makro
'
With ActiveSheet
.Copy Before:=Sheets(1)
ActiveSheet.Range("B7,E7,B11:C25") = ""
.Name = .Range("B7").Value
End With
End Sub
Gruß Uwe
Lieber Uwe,
vielen dank , du hast mir sehr weiter geholfen, mein Endformel sieht so aus:
Sub NeuerSchüler()
With ActiveSheet
.Name = .Range("B7").Value
.Copy Before:=Sheets(1)
ActiveSheet.Range("B7,E7,B11:C25") = ""
End With
With ActiveSheet
.Name = "Schüler 2"
ActiveSheet.Range("B7") = "HIER NAME EINTRAGEN!"
ActiveSheet.Range("E7") = "HIER KLASSE EINTRAGEN!"
End With
End Sub
(08.03.2020, 12:20)atilla schrieb: Hallo,
ist das so verlangt, so wie Du es machst, oder kannst Du frei entscheiden, wie Du zum Ergebnis kommst.
Wenn Du frei entscheiden kannst, dann wäre eine andere Vorgehensweise besser.
Es wäre besser die Schüler Tabelle leer als Vorlagen Tabelle zu haben.
Dann aus einer andern Tabelle heraus diese Tabelle zu kopieren und mit dem Namen eines ausgewählten Schüler zu benennen und die Zellen entsprechen auch zu befüllen.
Ich wollte es so, aber danke.
Die Lösung von Uwe hat mir geholfen, ich kann die Datei, wenn ich fertig bin euch zeigen, wer Interesse hat.
mich würde die Tabelle interessieren. Will noch dazu lernen.
Lg
Marcus
Wissen ist Macht - es ist aber nicht schlimm nicht alles zu wissen.
Man muss nicht alles wissen - man muss nur wissen wo es steht, oder wo man Hilfe bekommt.
mich würde die Tabelle interessieren. Will noch dazu lernen.
Lg
Marcus
Jap, ich werde sie heute noch hochladen, muss noch was machen, dann schicke ich 2 Versionen.
1. Version: Blatt ist geschützt und nur bestimmte Felder können ausgefüllt werden.
2. Version: Blatt ist ungeschützt man kann alles bearbeiten und ansehen.