30.05.2018, 14:20
(Dieser Beitrag wurde zuletzt bearbeitet: 31.05.2018, 19:42 von WillWissen.
Bearbeitungsgrund: Codetags
)
Hallo zusammen,
meine grobschlächtigen VBA-Kenntnisse haben wieder ihre Grenzen erreicht.
Ich habe ein Scrum Board (Kalender für Projektmanagement) mit einem Blatt namens Overview am Anfang. Danach folgen alle weiteren Blätter, wobei jedes Blatt zu genau einem Projekt gehört.
Ein paar der wichtigsten Infos in einzelnen Zellen auf den vielen Projektblättern sollen nun per Makro nach vorne in das Overview übertragen werden, wobei jedes Projekt dort eine eigene Zeile erhält.
Ich habe bereits:
Es funktioniert schon ein Makro bei dem aus einem Blatt "Vorlage" (welches später versteckt wird) ein neues Projekt erstellt wird. Dort werden bereits über aufploppende Fenster Name und Daten abgefragt und in die Projektblätter eingetragen. Außerdem entsteht im Overview schon eine vorformatierte Zeile für das neue Projekt.
NUN DAS PROBLEM: Diese neue und damit auch LETZTE Zeile im Overview soll z.B. den Projektnamen in Zelle (LastRow, 2) zugewiesen bekommen.
Ich dachte das ließe sich doch per Formel gut steuern, falls sich mal am Namen oder an anderen Daten im Projekt etwas ändert. Ich wollte mit:
... ='ProjektnameXY'!Zelle... arbeiten.
DA ABER MIT DEM MAKRO DAS NEUE PROJEKT EBEN ERST ENTSTANDEN IST UND DAMIT AUCH DER PROJEKTNAME, IST DER PROJEKTNAME EINE VARIABLE. ES KOMMEN ÜBER DAS JAHR IMMER NEUE PROJEKTE HINZU DIE EBEN ALLE GANZ VERSCHIEDEN HEIßEN OHNE DASS ICH VORHER DEN NAMEN KENNE. - DIE BLÄTTER NAMEN SIND DAMIT NICHT VORDEFINIERT -
:::ALLES FUNKTIONIERT BIS AUF DIE VORLETZTEN BEIDEN ZEILEN:::
Hier mein aktueller Code:
Damit steht nun einfach in Spalte 2 der letzten Zeile im Overview "'Projektname'!B4" , anstatt der Name, den ich dem neuen Projekt gegeben habe.
Kann mir bitte ein Pro helfen?
Vielen Dank vorab!!!
meine grobschlächtigen VBA-Kenntnisse haben wieder ihre Grenzen erreicht.
Ich habe ein Scrum Board (Kalender für Projektmanagement) mit einem Blatt namens Overview am Anfang. Danach folgen alle weiteren Blätter, wobei jedes Blatt zu genau einem Projekt gehört.
Ein paar der wichtigsten Infos in einzelnen Zellen auf den vielen Projektblättern sollen nun per Makro nach vorne in das Overview übertragen werden, wobei jedes Projekt dort eine eigene Zeile erhält.
Ich habe bereits:
Es funktioniert schon ein Makro bei dem aus einem Blatt "Vorlage" (welches später versteckt wird) ein neues Projekt erstellt wird. Dort werden bereits über aufploppende Fenster Name und Daten abgefragt und in die Projektblätter eingetragen. Außerdem entsteht im Overview schon eine vorformatierte Zeile für das neue Projekt.
NUN DAS PROBLEM: Diese neue und damit auch LETZTE Zeile im Overview soll z.B. den Projektnamen in Zelle (LastRow, 2) zugewiesen bekommen.
Ich dachte das ließe sich doch per Formel gut steuern, falls sich mal am Namen oder an anderen Daten im Projekt etwas ändert. Ich wollte mit:
... ='ProjektnameXY'!Zelle... arbeiten.
DA ABER MIT DEM MAKRO DAS NEUE PROJEKT EBEN ERST ENTSTANDEN IST UND DAMIT AUCH DER PROJEKTNAME, IST DER PROJEKTNAME EINE VARIABLE. ES KOMMEN ÜBER DAS JAHR IMMER NEUE PROJEKTE HINZU DIE EBEN ALLE GANZ VERSCHIEDEN HEIßEN OHNE DASS ICH VORHER DEN NAMEN KENNE. - DIE BLÄTTER NAMEN SIND DAMIT NICHT VORDEFINIERT -
:::ALLES FUNKTIONIERT BIS AUF DIE VORLETZTEN BEIDEN ZEILEN:::
Hier mein aktueller Code:
Code:
Sub Neues_Projekt()
' Neues_Projekt Makro
' Neues Projekt erstellen und bennen
'
' Tastenkombination: Strg+Umschalt+N
Application.ScreenUpdating = False
'Worksheets("Vorlage").Visible = True
'Worksheets("Overview-Vorlage").Visible = True
'Projekt_als_Zeile_im_Overview mit Formatierung aus Overview-Vorlage Makro
Sheets("Overview-Vorlage").Select
Range("A3:X3").Select
Selection.Copy
Worksheets("Overview").Activate
Dim lngLastRow As Long
Dim lngCounter As Long
LastRow = Rows.Count
If Cells(Rows.Count, 1).Value = "" Then LastRow = Cells(Rows.Count, 1).End(xlUp).Row
LastRowPlusOne = LastRow + 1 'die letzte Zeile wird umdefiniert in letzte Zeile + 1
Range("A" & LastRowPlusOne & ":X" & LastRowPlusOne).Select
ActiveSheet.Paste
'Projektnamen vergeben
Dim Name As String
Dim Projektname As String
Projektname = InputBox("Bitte Name des Projektes eingeben")
Sheets("Vorlage").Copy Before:=Sheets("Vorlage")
ActiveSheet.Name = Projektname
Range("B4") = Projektname
'Wunschtermin Kunde bedaten
Dim Kundenwunsch As Date
Kundenwunsch = InputBox("Bitte Kundenwunsch-Termin bedaten - tt.mm.yyyy")
Range("P4") = Kundenwunsch
'Siemens Kick Off bedaten
Dim Kick_Off As Date
Kick_Off = InputBox("Bitte Siemens Kick Off bedaten - tt.mm.yyyy")
Range("O4") = Kick_Off
'Neue Zeile zum Projekt im Overview mit aktuellen Daten befüllen
Worksheets("Overview").Activate
ActiveSheet.Cells(LastRowPlusOne, 2).Formula = "'Projektname'!B4"
'Worksheets("Vorlage").Visible = FALSE
'Worksheets("Overview-Vorlage").Visible = FALSE
End Sub
Damit steht nun einfach in Spalte 2 der letzten Zeile im Overview "'Projektname'!B4" , anstatt der Name, den ich dem neuen Projekt gegeben habe.
Kann mir bitte ein Pro helfen?
Vielen Dank vorab!!!