Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

variabler Blattname als Variable für andere Blätter
#1
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:


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!!!
Antworten Top
#2
Hallo,

versuche es mal so
Code:
Sub Neues_Projekt()

' Neues_Projekt Makro
' Neues Projekt erstellen und bennen
'
' Tastenkombination: Strg+Umschalt+N
   Dim lngLastRow As Long
   Dim lngCounter As Long
   Dim Name As String
   Dim Projektname As String
   Dim Kundenwunsch As Date
   Dim Kick_Off As Date

   Application.ScreenUpdating = False
       
       'Worksheets("Vorlage").Visible = True
       'Worksheets("Overview-Vorlage").Visible = True
       
'Projekt_als_Zeile_im_Overview mit Formatierung aus Overview-Vorlage Makro
       Worksheets("Overview-Vorlage").Range("A3:X3").Copy
       Worksheets("Overview").Activate
       
   
       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
   
       Projektname = InputBox("Bitte Name des Projektes eingeben")
   
       Sheets("Vorlage").Copy Before:=Sheets("Vorlage")
       ActiveSheet.Name = Projektname
       Range("B4") = Projektname
       
'Wunschtermin Kunde bedaten
       Kundenwunsch = InputBox("Bitte Kundenwunsch-Termin bedaten - tt.mm.yyyy")
       Range("P4") = Kundenwunsch
       
'Siemens Kick Off bedaten
       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
Gruß Stefan
Win 10 / Office 2016
Antworten Top
#3
Hi,

nur ein kleiner Hinweis: vermeide nach Möglichkeit ganze Sätze in Großbuchstaben zu schreiben. Die Großschrift in Foren, Chats usw. wird sehr häufig als lautes Schreien interpretiert.
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Antworten Top
#4
Hallöchen,

Zitat:Die Großschrift in Foren, Chats usw. wird sehr häufig als lautes Schreien interpretiert.
Zum Glück habe ich meine Lautsprecher gerade aus ... Wink

Ansonsten kannst Du auch gerne die Formatierungsmöglichkeiten des Editors nutzen, z.B. B für Bold (Fettschrifft)
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste