908 Aufrufe
Gefragt in Tabellenkalkulation von
Guten Abend liebe Support Gemeinde,

ich habe folgende Herausforderung, die ich leider selber nicht meistern kann:
Mein Workbook beinhaltet bisher zwei Tabellenblätter, im 1. Tabellenblatt befindet sich eine Tabelle die verschiedene Noten für die Bewertungen von zukünftigen Veranstaltungen beinhaltet. Im zweiten eine Vorlage für neue Sheets, in denen die Noten zu den Veranstaltungen begründet werden sollen. Habe bisher ein Makro angelegt, mit dem ein neuer Sheet angelegt werden kann.

Problemstellung: Das ganze sollte auch der Auswertung dienen, d.h. ich würde gerne die Noten aus den zukünftigen Sheets in den erste Sheet per Makro schreiben. Ist das möglich?

Falls das zu verwirrend formuliert war, kann ich auch noch das Workbook hochladen.

Hilfe wäre grandios :)

4 Antworten

0 Punkte
Beantwortet von m-o Profi (22.9k Punkte)
Hallo,

du könntest ja eine Verknüpfung von der 1. Seite auf die entsprechenden Zellen im neuen Sheet machen.
Hier mal ein Beispiel:

Sub test()

Dim lngLetzte As Long

'letzte Zeile in Spalte A der Tabelle1 ermitteln und um 1 erhöhen
lngLetzte = Worksheets("Tabelle1").Cells(Rows.Count, 1).End(xlUp).Row + 1

'neues Arbeitsblatt am Ende einfügen
Worksheets.Add After:=Worksheets(Worksheets.Count)

'Testeintrag
ActiveSheet.Range("A1") = ActiveSheet.Name

'Link auf A1 im neuen Arbeitsblatt
Worksheets("Tabelle1").Cells(lngLetzte, 1).FormulaLocal = "=" & ActiveSheet.Name & "!A1"

End Sub


Gruß

M.O.
0 Punkte
Beantwortet von
Hi M.O,

danke für deine Antwort.
Mit Sicherheit ein guter Ansatz, aber glaube ich nicht vollkommen zielführend für mich.
Habe mir gedacht, in Ergänzung zu deinem Code, ActiveSheet durch "Tabelle X" auszutauschen, da es ja später mehrere zusätzliche Sheets sein werden. Das ganze dann noch mit On Error GoTo " " versehen, " "= Exit Sub oder so, dass falls Tabelle X noch nicht vorhanden ist der Sub beendet wird.

Soll ich X dann als fortlaufenden COde machen, d.h. jedes Mal ne neue Zeile, oder könnte man das auch als Variable definieren?

LG
0 Punkte
Beantwortet von
Edit zu meinem letzten Beitrag: die Zeile mit Worksheets.Add läuft bereits schon über ein anders Makro. Macht es mehr sinn beides in ein Makro zu schreiben?
0 Punkte
Beantwortet von m-o Profi (22.9k Punkte)
Hallo,

mein Code war als Beispiel gedacht, wie man eine Verknüpfung beim Anlegen eines Arbeitsblattes realisieren kann. Mit ActiveSheet wird in dem Code das neu angelegte Arbeitsblatt angesprochen.
Was du daraus machst, bleibt dir überlassen ;-).

Ich würde wie in meinem geposteten Makro vorgehen und die Verknüpfungen bereits beim Anlegen der neuen Arbeitsblätter einfügen.

Natürlich kannst du die Namen der Arbeitsblätter auch per Variable ansprechen und die Verknüpfungen über ein extra Makro einfügen lassen.

Gruß

M.O.
...