2017-02-22 1 views
-3

Ich versuche, Werte aus einer Reihe von Zellen auf Blatt 1 in die nächste verfügbare Zeile auf Blatt 2 zu schneiden und zu überschreiten. Alle Anleitungen und Ratschläge, die ich habe gesehen wurde zum Kopieren und Einfügen und für dasselbe Blatt.Ausschneiden und Einfügen von Werten von Blatt 1 in die nächste verfügbare Zeile auf Blatt 2

Bereich auf Blatt 1 ist E5-H5 zu schneiden, nicht kopiert und dann auf Blatt 2, Zellen E7-H7 oder die nächste Zeile darunter eingefügt, wenn jemand Daten eingibt Ich brauche Blatt 2, um es zu behalten .

+3

Stack-Überlauf ist nicht ein Code schriftlich Service. Die Leute kommen mit spezifischen Problemen, die sie mit ihrem Code haben. Es gibt andere Seiten, die Ihnen helfen, VBA zu programmieren. –

Antwort

0

Der folgende Code kopiert Ihren Bereich und sucht nach der ersten leeren Zelle (von unten nach oben) in Spalte E, Blatt 2, einzufügen. Hoffe das hilft.

Sub CutPaste() 

Dim Lastrow As Long 

ThisWorkbook.Sheets("Sheet1").Range("E5:H5").Copy 
Lastrow = Sheets("Sheet2").Cells(Rows.Count, 5).End(xlUp).Offset(1, 0).Select 
Selection.PasteSpecial 

End Sub 

Wie Sie neu sind Überlauf Stack und wahrscheinlich VBA als gut, nur versuchen, den Kommentar oben von Peh zu halten. Ihre Frage ist zwar nicht spezifisch, aber in Teilen leicht zu finden. Wenn dies Ihre Frage beantwortet, kreuzen Sie diese bitte an.

+0

Danke für die Hilfe. Ich bin neu und entschuldige mich für den Missbrauch der Website. – skip

+1

Danke für die Hilfe. Ich bin neu und entschuldige mich für den Missbrauch der Website. Ich habe versucht, die verschiedenen Teile des Makros zu googeln, die ich benötige, und kann unglücklicherweise nicht finden, nach was ich suche, weil alles, das ich in Google finde, wie man kopiert und einfügt. Ich hätte den Code gepostet, den ich versuchte zu tippen, aber ich fürchtete, dass es so viele Fehler damit gab, dass es eine Verschwendung aller Zeit wäre, sie zu entziffern. Ich habe den Code, den Sie mir freundlicherweise zur Verfügung gestellt haben, ausprobiert und festgestellt, dass es nicht funktioniert. Ich bekomme Fehler 1004. nicht sicher, was genau das bedeutet. – skip

+1

Verwenden Sie nicht auswählen. Ich werde eine Änderung unten in Bezug auf diese, aber markieren KoderM16 ist so korrekt, wie er Ihnen zuerst half, ich zog nur die Auswahl und bereinigt den Code. –

1

Nicht auswählen. Ich poste diese Antwort mehr helfen @ KoderM16 ihre Methoden verbessern als die ursprüngliche Frage zu beantworten:

Sub CutPaste() 
ThisWorkbook.Sheets("Sheet1").Range("E5:H5").Copy 
Sheets("Sheet2").Cells(Rows.Count, 5).End(xlUp).Offset(1, 0).PasteSpecial 
End Sub 

Auch ist dies nicht sinnvoll, da es wahr oder falsch zurückgibt (höchstwahrscheinlich immer wahr sein, denn es kann in Tatsache wählen Sie die entsprechende Adresse):

Lastrow = Sheets("Sheet2").Cells(Rows.Count, 5).End(xlUp).Offset(1, 0).Select 

Sie würden statt .select am Ende wollen .row, wenn Sie die Zeile Lastrow zuweisen möchten, müssen Sie nicht jedoch dann lastrow verwenden.

mit Ihrem Code, wie es ist, LastRow würde höchstwahrscheinlich immer -1 als dass der Wert für True

Verwandte Themen