Makro mit Zeile einfügen und Daten kopieren
#1
Hallo.

Ich wollte, in einer Tabelle,mit einem Makro über eine Zeile eine Leer Zeile einfügen.
Ich habe das mit dem Makorekorder aufgenommen, bekomme aber immer einen Fehler.

Mittlerweile habe ich unterschiedlichste Formeln gefunden, komme aber mit keiner klar.

Ich habe diesen Code beim aufzeichnen des Makros bekommen.
Code:
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromRightOrBelow


Angehängte Dateien Thumbnail(s)
   
Antworten Top
#2
Moin!
Deine Frage lautet: Wie?

Wenn ich über einer markierten Zelle eine neue Zeile einfügen will, verfahre ich wie folgt:
• Zelle markieren
• mit Umschalt+Leertaste markiere ich die gesamte Zeile
• Strg+[+] fügte eine neue Zeile oberhalb ein

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#3
Hallo Ralf.
Genau so, ich mach das halt mit der Maus.

Per Hand klappt das auch alles prima, nur über das Makro nicht.
Ich bekomme eine Fehlermeldung.
Beim Debuggen bekomme ich dann das oben eingefügte Bild mit der gelb hinterlegten Zeile


Angehängte Dateien Thumbnail(s)
   
Antworten Top
#4
Hallo,

aktiviere vor Ausführung des Makros das Blatt "Mitgliederdaten"!

Gruß, Uwe
Antworten Top
#5
Hallo Uwe.

Die Arbeitsblätter sind zusammen in einer Mappe. 
Wenn ich also die Datei / Mappe öffne, sollte doch das Blatt 
"Mitgliederdaten" aktiv sein?
Oder verstehe ich das falsch?

Gruß Roman
Antworten Top
#6
Hallo Roman

leider konnte mein PC das Bild nicht öffnen, beim speichern ist es zu klein zum lesen.
Auf meinem PC läuft der Code einwandfrei, egal wo der Cursor steht.
Was passiert, wenn du diesen Codeteil mal löschst.  Klappt es dann??
Ohne die Datei zu sehen können wir nur raten was da schiefläuft.?
Code:
CopyOrigin:=xlFormatFromRightOrBelow    '* einfach mal löschen!  Format Fehler in einer Zelle??

mfg Gast 123
Antworten Top
#7
Hallo Gast 123.

Prima. Der Tipp hat geholfen. 
Hatte mich auf diese Zeile verlassen, da sie gelb hinterlegt angezeit wurde.
Aber der Fehler war weiter unten. 
Hatte irgendwann einmal die Tabelle als Mitgliederdatern bezeichnet und den Fehler zwar korrigiert,
allerdings nicht im Makro.

JEtzt werde ich das mal korrigieren oder gleich neu machen.
Melde mich später ob's geklappt hat.
Danke Euch
Antworten Top
#8
Moin noch einmal!
Was willst Du mit dem Rekordercode wirklich erreichen?
Eine Tabelle erweitert man nicht, indem man eine Leerzeile unter der Überschrift einfügt, sondern, indem man unten anhängt und dann meinethalben sortiert.

Du solltest mal mindestens den gesamten Code in Textform zeigen.
Noch besser wäre eine Beispieldatei.
Dann könnte man Dir zeigen, wie es besser geht.

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#9
Hallo,

im vorherigen Thread bezog sich deine Frage auf ein Listobjekt ("Mitgliederdaten[Name]"). Wenn du in dieses Listobjekt eine Zeile einfügen willst macht man das sinnvollerweise unten dran. Dies wäre in deinem Fall so:
Code:
Sub NeueZeile()
    Tabelle1.ListObjects(1).ListRows.Add
End Sub

Da ich aber grad sehe, dass du eine neue leere 1. Zeile haben willst, wäre das dann so:
Code:
Sub LeereErsteZeile()
    Tabelle1.ListObjects(1).ListRows.Add (1)
End Sub

Gruß Uwe
Antworten Top
#10
Code:
Sub Eingabemaske()
'
' Eingabemaske Makro
'

'
    Rows("2:2").Select
    Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromRightOrBelow
    Sheets("Eingabemaske").Select
    Range("N22").Select
    Selection.Copy
    Sheets("Mitgliederdaten").Select
    Range("B2").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Sheets("Eingabemaske").Select
    Range("N23").Select
    Selection.Copy
    Sheets("Mitgliederdaten").Select
    Range("C2").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Sheets("Eingabemaske").Select
    Range("N24").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Mitgliederdaten").Select
    Range("D2").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Sheets("Eingabemaske").Select
    Range("N25").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Mitgliederdaten").Select
    Range("E2").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Sheets("Eingabemaske").Select
    Range("N26").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Mitgliederdaten").Select
    Range("F2").Select
    ActiveSheet.Paste
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Sheets("Eingabemaske").Select
    Range("N27").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Mitgliederdaten").Select
    Range("G2").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Sheets("Eingabemaske").Select
    Range("N28").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Mitgliederdaten").Select
    Range("T2").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Sheets("Eingabemaske").Select
    Range("N29").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Mitgliederdaten").Select
    Range("U2").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Sheets("Eingabemaske").Select
    Range("N30").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Mitgliederdaten").Select
    Range("V2").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Sheets("Eingabemaske").Select
    Range("N31").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Mitgliederdaten").Select
    Range("H2").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Sheets("Eingabemaske").Select
    Range("N32").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Mitgliederdaten").Select
        Range("I2").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Sheets("Eingabemaske").Select
    Range("N33").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Mitgliederdaten").Select
    Range("K2").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Sheets("Eingabemaske").Select
    Range("N34").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Mitgliederdaten").Select
    Range("L2").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Sheets("Eingabemaske").Select
    Range("N35").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Mitgliederdaten").Select
    Range("M2").Select
    ActiveSheet.Paste
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Sheets("Eingabemaske").Select
    Range("N36").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Mitgliederdaten").Select
    Range("N2").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Sheets("Eingabemaske").Select
    Range("N37").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Mitgliederdaten").Select
    Range("O2").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Sheets("Eingabemaske").Select
    Range("N38").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Mitgliederdaten").Select
    Range("P2").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Sheets("Eingabemaske").Select
    Range("N39").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Mitgliederdaten").Select
    Range("Q2").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Sheets("Eingabemaske").Select
    Range("N40").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Mitgliederdaten").Select
    Range("R2").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Sheets("Eingabemaske").Select
    Range("N41").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Mitgliederdaten").Select
    Range("S2").Select
        Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
        Sheets("Eingabemaske").Select
    Range("D21").Select
    Selection.ClearContents
    Range("D23").Select
    Selection.ClearContents
    Range("D25").Select
    Selection.ClearContents
    Range("D27").Select
    Selection.ClearContents
    Range("D29").Select
    Selection.ClearContents
    Range("D31").Select
    Selection.ClearContents
    Range("D33").Select
    Selection.ClearContents
    Range("D35").Select
    Selection.ClearContents
    Range("D37").Select
    Selection.ClearContents
    Range("D39").Select
    Selection.ClearContents
    Range("D41").Select
    Selection.ClearContents
    Range("H23").Select
    Selection.ClearContents
    Range("H27").Select
    Selection.ClearContents
    Range("H29").Select
    Selection.ClearContents
    Range("H31").Select
    Selection.ClearContents
    Range("H33").Select
    Selection.ClearContents
    Range("H35").Select
    Selection.ClearContents
    Range("H37").Select
    Selection.ClearContents
    Range("H39").Select
    Selection.ClearContents
    Range("H42").Select
   
End Sub
Hallo.
Jetzt hat's bei mir doch etwas gedauert. 
Ich habe da viele Fehler gemacht, mit kopieren von Formeln aus verschieden Versuchen.

Dabei war mir nicht bewusst, das die ganzen Zeilen und Spalten, durch löschen und verschieben ...
nicht mehr zusammen passen. Da habe ich jetzt wirklich dazu gelernt. 

Das Makro läuft jetzt ab, allerding nicht so wie gewollt.

Die Daten werden jetzt in die Mitgliederdaten übertragen.
Allerding um eine Spalte versetzt
Die neue Spalte wirtd auch nicht erstellt, sondern nur die obereste Zeil überschrieben.
Da ist es sicherlich sinnvoller eine neue Zeile unten anzuhängen wir ihr geschrieben habt.

Ich hab da ein Problem mit dem erklären. Deshalb hänge ich jetzt den Code und ein Bild an.

Vielleicht einfacher für Euch.


Und wenn das alles läuft, möchte ich halt noch eine Suche aus den Mitgliederdaten nach Name , Vorname und Mitgliedsnummer machen.
Das Ergebniss soll dann übersichtlich angezeigt werden. Undecided


Angehängte Dateien Thumbnail(s)
           
Antworten Top


Gehe zu:


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