28.10.2018, 10:09
Hallo und guten Morgen
Ich bin ein normaler Excel-Anwender ohne richtige VBA Kenntnisse und stehe vor folgendem Problem:
Ich soll eine Arbeitsmappe mit folgenden Kriterien erstellen
Sheet 1als Dateneingabeformular in dem in der Spalte, sagen wir mal L3-L100 der Name der anderen Sheets steht (z.B. Sheet 2 hat den namen 318 dann steht in L3 und/oder L15 usw. 318)
Sheet 2 mit dem Namen 318
Sheet 3 mit dem Namen 744 usw usw
Nun soll ich aus dem Dateneingabeformular alle Zeilen in das Sheet kopieren das den gleichen Namen hat.
Nach dem Kopieren sollen die Werte des Dateneingabeblattes gelöscht werden (die Formatierung muss bestehen bleiben).
Wenn das Dateneingabeformular mit neuen Daten befüllt wird soll die Prozedur von neuem beginnen Gerne auch mit "Klickbutton"
Kopieren der Zeilen in das richtige Sheet in die nächste freie Zeile. Die alten Daten in dem z.B. 318er Sheet müssen erhalten bleiben
Ich hab einmal so angefangen, dass ich eine Formel und ein Macro gemacht habe in dem ich alle nicht 318 ausblende, somit habe ich nur mehr die 318er.
Zuerst frage ich ab ob wahr mit folgender Formel:
=WENN($P$1=$K3;"";"x") 'P1 gebe ich z.B. 318 ein und dann kommt auf L3 die Auswertung
... und dann die beiden Macros hier:
Public Sub Zeilen_ausblenden()
Application.ScreenUpdating = False
For i = 3 To 1000
If Cells(i, 12).Value = "x" Then
Rows(i).Hidden = True
End If
Next i
Application.ScreenUpdating = True
Range("P1").Select
End Sub
Sub Zeilen_einblenden()
Cells.Rows("3:1000").Hidden = False
Range("P1").Select
End Sub
Das Funktioniert soweit wie geplant.
Jetzt harpert es mit dem kopieren in das richtige Sheet in die nächste freie Zeile
Wenn Ihr mir da Bitte mal unter die Arme greifen könnt.
Noch eine Bitte, da ich nicht sagen kann ob ich die Eingabe noch erweitern muss (also das meine Abfrage nicht in Spalte L sondern z.B. M steht) könntet Ihr das Script mit Erklärungstexten zur Anpassung versehen?
Danke vielmals
Gruß
Herbert
Ich bin ein normaler Excel-Anwender ohne richtige VBA Kenntnisse und stehe vor folgendem Problem:
Ich soll eine Arbeitsmappe mit folgenden Kriterien erstellen
Sheet 1als Dateneingabeformular in dem in der Spalte, sagen wir mal L3-L100 der Name der anderen Sheets steht (z.B. Sheet 2 hat den namen 318 dann steht in L3 und/oder L15 usw. 318)
Sheet 2 mit dem Namen 318
Sheet 3 mit dem Namen 744 usw usw
Nun soll ich aus dem Dateneingabeformular alle Zeilen in das Sheet kopieren das den gleichen Namen hat.
Nach dem Kopieren sollen die Werte des Dateneingabeblattes gelöscht werden (die Formatierung muss bestehen bleiben).
Wenn das Dateneingabeformular mit neuen Daten befüllt wird soll die Prozedur von neuem beginnen Gerne auch mit "Klickbutton"
Kopieren der Zeilen in das richtige Sheet in die nächste freie Zeile. Die alten Daten in dem z.B. 318er Sheet müssen erhalten bleiben
Ich hab einmal so angefangen, dass ich eine Formel und ein Macro gemacht habe in dem ich alle nicht 318 ausblende, somit habe ich nur mehr die 318er.
Zuerst frage ich ab ob wahr mit folgender Formel:
=WENN($P$1=$K3;"";"x") 'P1 gebe ich z.B. 318 ein und dann kommt auf L3 die Auswertung
... und dann die beiden Macros hier:
Public Sub Zeilen_ausblenden()
Application.ScreenUpdating = False
For i = 3 To 1000
If Cells(i, 12).Value = "x" Then
Rows(i).Hidden = True
End If
Next i
Application.ScreenUpdating = True
Range("P1").Select
End Sub
Sub Zeilen_einblenden()
Cells.Rows("3:1000").Hidden = False
Range("P1").Select
End Sub
Das Funktioniert soweit wie geplant.
Jetzt harpert es mit dem kopieren in das richtige Sheet in die nächste freie Zeile
Wenn Ihr mir da Bitte mal unter die Arme greifen könnt.
Noch eine Bitte, da ich nicht sagen kann ob ich die Eingabe noch erweitern muss (also das meine Abfrage nicht in Spalte L sondern z.B. M steht) könntet Ihr das Script mit Erklärungstexten zur Anpassung versehen?
Danke vielmals
Gruß
Herbert