ich stehe vor folgendem Problem:
Meine Excel wird im Projektmanagement eingesetzt und eine Funktion davon ist, wenn jemand auf einen bestimmten CommandButton klickt (das Projekt fertig geplant hat) wird der Projektname (Tabellenblattname vom AcitceSheet) in ein HistorySheet (Tabellenblatt wo alle Projekte aufgelistet sind) übertragen. Dort werden in einer Zeile sämtliche Projekte fortlaufend nach rechts erfasst und jeweils drunter auch ein Hyperlink zum Projekt erstellt.
Zusätzlich wird in einer bestimmten Spalte das heutige Datum und das Namenskürzel (mittels Inputbox) von der Person die das Projekt fertig geplant hat fortlaufend nach unten erfasst.
Im Schnittpunkt von Projekterfassung und dem Änderungsdatum wird ein "X" gesetzt.
Das funktioniert auch alles ganz super, allerdings habe ich einen Gedankenfehler für eine weitere Situation gemacht.
Wenn jemand das bestehende bereits geplante Projekt updated wird ebenfalls auf diesen CommandButton geklickt.
Allerdings soll der Projektname dann nicht nochmal ins HistorySheet übertragen und ein Hyperlink erstellt werden, sondern lediglich das Änderungsdatum und das Namenskürzel fortlaufend erfasst werden. Das "X" soll also in der Spalte wo das Projekt bereits erfasst ist geschrieben werden und sich lediglich nach unten verschieben (also auf Höhe des neuen Änderungsdatums und Namenkürzels.
Damit man sich das Ganze besser vorstellen kann hab ich mal nur diese eine Funktion in eine Testdatei gepackt, die ich hier rauf lade.
https://www.herber.de/bbs/user/113471.xlsm
Ich wäre super dankbar wenn jemand dafür eine Lösung parat hat :)
Liebe Grüße und einen schönen Tag
Felix
Hier mal mein aktuelles Makro, was auch in der Testdatei drin ist:
Sub Blattname_in_History_schreiben_mit_DgNummer_Datum_Namenskürzel_Hyperlink()
'Projektname übertragen
Dim NewProject As Integer
NewProject = Sheets("History").Cells(2, Columns.Count).End(xlToLeft).Column + 1
ActiveSheet.Cells(10, 1).Copy
Sheets("History").Cells(2, NewProject).PasteSpecial xlValues
ActiveSheet.Cells(11, 1).Copy
Sheets("History").Cells(3, NewProject).PasteSpecial xlValues
'aktuelles Datum auf Projekt-Sheet notieren
Range("B7") = Date
'und
'Planning Date in History-Sheet fortlaufend dokumentieren
Dim PlanningUpdate As Integer
PlanningUpdate = Sheets("History").Cells(Rows.Count, 1).End(xlUp).Row + 1
ActiveSheet.Cells(7, 2).Copy
Sheets("History").Cells(PlanningUpdate, 1).PasteSpecial xlValues
'Hyperlinkerstellung zu neuem Projekt
letztespalte = Sheets("History").Cells(3, 256).End(xlToLeft).Column
'Findet den letzten Eintrag (DG-Nummer) in der dritten Zeile vom History-Sheet
Sheets(1).Hyperlinks.Add Anchor:=Cells(3, letztespalte), Address:="", SubAddress:="'" & _
Sheets(4).Name & "'!" & Cells(1, 1).Address
Sheets(1).Select
' Verlinkt zu neuem Projekt, welches (ursprünglich) das 4. Tabellenblatt ist
'Namenskürzel neben Planning Date (via Inputbox)
Dim ExcelUpdateBy
ExcelUpdateBy = Application.InputBox(Prompt:="Please write in your initials", Type:=2, Default:= _
"e.g.: MaMu for Max Mustermann")
Sheets("History").Cells(PlanningUpdate, 2).Value = ExcelUpdateBy
Sheets("History").Cells(PlanningUpdate, NewProject).Value = "x"
End Sub