Kopieren Sie Zellen aus der Active Row zu einer Datenbank Blatt mit VBA in Microsoft Excel
in ein Datenbankblatt In Microsoft Excel können wir Zellen aus der aktiven Zellenzeile auf ein bestimmtes Blatt kopieren. In diesem Artikel verwenden wir VBA-Code, um Daten von jedem Blatt zu übertragen und die Daten in einem Arbeitsblatt zusammenzuführen. Wir werden ein Master-Blatt in die Arbeitsmappe einfügen und die Daten aus dem angegebenen Bereich in einem Blatt speichern.
_Die Beispielcodes werden in ein Datenbankblatt mit dem Namen Sheet2 kopiert.
Jedes Mal, wenn wir ein Makro ausführen, werden die Zellen unter der letzten Zeile mit Daten nach der letzten Spalte in Blatt 2 platziert. Dieses Makro kopiert die Zellen aus Spalte A, D aus ActiveCell._
Es folgt das Bild der Beispieldaten:
So kopieren Sie Zellen aus der aktiven Zellenzeile in Sheet2; Wir müssen die folgenden Schritte ausführen, um den VB-Editor zu starten:
Klicken Sie auf die Registerkarte Entwickler. Wählen Sie in der Gruppe Code die Option Visual Basic
aus
===
-
Klicken Sie auf Einfügen und dann auf Modul
Dadurch wird ein neues Modul erstellt. Geben Sie den folgenden Code in das Standardmodul
Sub CopyCells() Dim sourceRange As Range Dim destrange As Range Dim Lr As Long Lr = LastRow(Sheets("Sheet2")) + 1 Set sourceRange = Sheets("Sheet1").Cells( _ ActiveCell.Row, 1).Range("A1:D1") Set destrange = Sheets("Sheet2").Range("A" & Lr) sourceRange.Copy destrange End Sub
ein
Sub CopyCellsValues() Dim sourceRange As Range Dim destrange As Range Dim Lr As Long Lr = LastRow(Sheets("Sheet2")) + 1 Set sourceRange = Sheets("Sheet1").Cells( _ ActiveCell.Row, 1).Range("A1:D1") With sourceRange Set destrange = Sheets("Sheet2").Range("A" _ & Lr).Resize(.Rows.Count, .Columns.Count) End With destrange.Value = sourceRange.Value End Sub
Function LastRow(sh As Worksheet) On Error Resume Next LastRow = sh.Cells.Find(What:="*", _ After:=sh.Range("A1"), _ Lookat:=xlPart, _ LookIn:=xlFormulas, _ SearchOrder:=xlByRows, _ SearchDirection:=xlPrevious, _ MatchCase:=False).Row On Error GoTo 0 End Function
Function Lastcol(sh As Worksheet) On Error Resume Next Lastcol = sh.Cells.Find(What:="*", _ After:=sh.Range("A1"), _ Lookat:=xlPart, _ LookIn:=xlFormulas, _ SearchOrder:=xlByColumns, _ SearchDirection:=xlPrevious, _ MatchCase:=False).Column On Error GoTo 0 End Function
===
Um den obigen VBA-Code zu überprüfen; Fügen Sie Daten im Bereich „A1: D1“ hinzu und führen Sie das Makro durch Drücken der Tastenkombination F5 aus. Die im angegebenen Bereich gespeicherten Daten werden ab A1
nach „Sheet2“ kopiert * Wenn wir dieses Makro erneut ausführen; Die Daten werden in der nächsten Zeile gespeichert. siehe Bild unten:
Wir können den Bereich im obigen Makro ändern, der unserer Anforderung entspricht. Schlussfolgerung: * Mit dem obigen Makro können wir Zellen aus der aktiven Zellenzeile mit VBA-Code auf ein neues Blatt kopieren.
Wenn Ihnen unsere Blogs gefallen haben, teilen Sie sie Ihren Freunden auf Facebook mit. Sie können uns auch auf Twitter und Facebook folgen.
Wir würden gerne von Ihnen hören, lassen Sie uns wissen, wie wir unsere Arbeit verbessern, ergänzen oder innovieren und für Sie verbessern können. Schreiben Sie uns an [email protected]