Zelle Über Macros/VBA's einfügen
#1
Hallo zusammen,

ich bin noch ein Neuling im Bereich Macros und VBA's - ich bin sonst immer sehr gut so zurechtgekommen, nun habe ich aber auf der Arbeit ein neues Monster Projekt bekommen und ich verzweifele sozusagen am Letzen Detail. Also zur Erklärung, ich muss eine riesige Excel Datei zusammenbauen, die zur Kostenverfolgen dienen soll, hierbei soll immer einzelne "Gewerke" vermerkt sein. Ich habe bei einer anderen Tabelle ein Element gefunden und "geklaut" was super Praktisch ist. Am besten macht ihr dabei nun die Datei auf, die ich angefügt habe.

Wie ihr seht habe ich dort einen Button "Nachtrag hinzufügen" - Dieser funktioniert wie folgt. Ihr müsst eine Blaue Spalte anklicken und dann den Button - Dann macht der automatisch einen neue Blaue Spalte. Erstmal wäre super wenn der Automatisch dann auch den Inhalt von Spalte A, B & C übernimmt und in Spalte G "Nachtrag" schreibt.

Des Weiteren möchte ich, einen zweiten Button einfügen. Der soll Ähnlich wie der funktionieren, nur anders ;) :P 
Hier sollte der nur funktionieren wenn ich eine Weiße Zeile anklicke und dabei soll der nicht eine Reihe Einfügen, sondern 2, die erste in Farbe "Ohne Füllung" also xlNone und die zweite in diesen Blau - Also code 37. Die Farben sind super wichtig für die Formel die ich gezogen habe, weil er nur werte mit bestimmter Farbe rechnen soll.
Und nun das Highlight, er soll dabei die Formel aus den Weißen Zellen übernehmen nur mir den entsprechenden Werten.

Ist das ganze möglich, was ich mir vorstelle, wenn ja wie

Vielen Dank und viele Grüße
Sven


Angehängte Dateien
.xlsm   Kostenverfolgung_Gewerke_forum1.xlsm (Größe: 125,64 KB / Downloads: 5)
Top
#2
Hallo,

zum ersten Button: Meinst Du so?

Code:
Sub AddRow()


Dim lngRow As Long                                          'Variables declaration
    
    If ActiveCell.Interior.ColorIndex = 37 Then             'Works only if active cell is blue
    
        lngRow = ActiveCell.Row                             'Returns the Number of the row af the activ cell
        
            If lngRow > 1 Then
                Rows(lngRow + 1).Insert                     'Adds a ne Row
                'Copys formats, values and formulars for the new row and the programmed columns
                Rows(lngRow).AutoFill Rows(lngRow).Resize(2), xlFillFormats
                Range("A" & lngRow, "AK" & lngRow).AutoFill Range("A" & lngRow, "AK" & lngRow).Resize(2), xlFillFormats
                Range("AL" & lngRow, "AM" & lngRow).AutoFill Range("AL" & lngRow, "AM" & lngRow).Resize(2), xlFillDefault
                Range("AN" & lngRow, "AO" & lngRow).AutoFill Range("AN" & lngRow, "AO" & lngRow).Resize(2), xlFillFormats
                Range("A" & lngRow).Resize(, 3).Copy Range("A" & lngRow).Offset(1)
                Range("G" & lngRow).Offset(1) = "Nachtrag"
                Application.CalculateFull                   'Updates all values in the sheet
            End If
    Else
        MsgBox "Please select a blue cell under which you want to add a row!"    'Error Message, no blue cell selected
    End If
End Sub
Gruß Stefan
Win 10 / Office 2016
Top


Gehe zu:


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