Clever-Excel-Forum

Normale Version: VBA Inhalte Tabellenblätter löschen und Werte neu einfügen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Moin zusammen,

ich bin neu hier und nicht das As in VBA.

Ich habe ein mittelschweres Problem.

Ich habe eine Arbeitsmappe erstellt, in der Formulare ausgefüllt werden, wobei diese bis zu 50 anwachsen können.

Weiterhin existieret 1 Tabellenblatt namens Übersicht, in der jeweils die 2. Zeile jeden Formulars übertragen werden soll.

Weiterhin noch 1 Tabellenblatt namens Pareto, in der jeweils die 4. Zeile des jeweiligen Formulars übertragen werden soll.

2 Tabellenblätter der Arbeitsmappe sollen nicht verändert werden ("Vorlage", "Dropdowns)

Die Formulare werden automatisch und fortlaufend 01, 02, 03... benannt.

Nun habe ich mir gedacht, vielleicht ist dies auch möglich, dass bei Klicken auf einen Button im jeweiligen Formular eine Routine ausgelöst wird, die 

1. den kompletten Inhalt von "Übersicht" ab Zeile 3 löscht
2. den kompletten Inhalt von "Pareto" ab Zeile 4 löscht
3. Jewils die Zeile 2 aller Formulare von 01 -XX nach "Übersicht" kopiert
4. Jeweils die Zeile 4 aller Formulare von 01-XX nach "Pareto" kopiert
5. beide Tabellenblätter nach Spalte A sortiert.

Es gibt leider keine andere Lösung, die Formulare sollen verwendet werden.


Danke vorab

quecki
Hallo,

lade bitte eine Beispieldatei hoch.
Guten Morgen,

ich habe die Beispieldatei hinzugefügt.

Der code für die Lösung meines Problems soll auf den Button "aktualisieren" im Tabellenblatt Vorlage gelegt werden.

Per VBA habe ich es so gelöst, dass bei Click auf Neu/New automatisch ein neues Formular aus Vorlage erzeugt wird.

In Zeile 2 und 4 der Formulare werden alle relevanten Felder gesammelt, die dann nach Übersicht und ParetoChart übergeben werden sollen.

Die Funktion hinzufügen funktioniert bereits, nur eben aktualisieren nicht, daher hatte ich die Idee, alle Zeilen zu löschen und die Tabellen neu aufbauen zu lassen. 

Ich hoffe Hilfe naht.

LG

quecki
Hallo,

Verknüpfe doch einfach die Zeilen des neuen Formulars in Übersicht und Pareto. Dann aktualisiert es sich automatisch und die beiden Buttons in der Vorlage sind überflüssig.

Code:
Private Sub CommandButton1_Click()
    Application.ScreenUpdating = False
    ActiveSheet.Activate
    Sheets("Vorlage").Visible = True
    Sheets("Vorlage").Copy Before:=Sheets(3)
    Sheets("Vorlage").Visible = False
    With Sheets(3)
      .Name = Format(Worksheets.Count - 4, "00")
      .Range("B13").Value = .Name
      Application.Goto Sheets("ParetoChart").Cells(Rows.Count, 1).End(xlUp).Offset(1, 0)
      .Range("a4:r4").Copy
      ActiveSheet.Paste Link:=True
      Application.Goto Sheets("Übersicht").Cells(Rows.Count, 1).End(xlUp).Offset(1, 0)
      .Range("a2:x2").Copy
      ActiveSheet.Paste Link:=True
    End With
    Application.CutCopyMode = False
    Application.ScreenUpdating = True
End Sub

Gruß Uwe
Moin,

danke, es funktioniert super, genau das was ich gesucht hatte.
Hallo,

und was ist das Problem?
In der kurzen Zeit kannst Du meinen Vorschlag nicht getestet haben!

Gruß Uwe
Hallo,

ich hatte wie immer nicht alles gelesen. War zu voreilig, funtioniert super, vielen herzlichen Dank.

Gruß

Steffen