Skopiuj wiersz lub wiersze do arkusza bazy danych za pomocą VBA w programie Microsoft Excel

Anonim
  • Przykładowe kody zostaną skopiowane do arkusza bazy danych o nazwie Sheet2.
  • Za każdym razem, gdy uruchomisz jeden z podrzędnych, komórki zostaną umieszczone poniżej ostatniego wiersza z danymi lub za ostatnią kolumną z danymi w arkuszu2.
  • Dla każdego przykładu istnieje makro, które wykonuje normalną kopię i takie, które jest tylko kopią wartości.
  • Przykładowe subwoofery korzystają z poniższych funkcji (makra nie będą działać bez tych funkcji).
Sub CopyRow() Dim sourceRange As Range Dim odstrange As Range Dim Lr As Long Lr = LastRow(Sheets("Arkusz2")) + 1 Ustaw sourceRange = Sheets("Arkusz1").Rows("1:1") Ustaw odstrange = Sheets("Sheet2").Rows(Lr) sourceRange.Copy destrange End Sub Sub CopyRowValues() Dim sourceRange As Range Dim destrange As Range Dim Lr As Long Lr = LastRow(Sheets("Sheet2")) + 1 Ustaw sourceRange = Arkusze ("Arkusz1").Rows("1:1") Ustaw odstrange = Arkusze("Arkusz2").Rows(Lr). _ Resize(sourceRange.Rows.Count) destrange.Value = sourceRange.Value Funkcja End LastRow(sh As Worksheet) W przypadku błędu Wznów Następne LastRow = sh.Cells.Find(What:="*", _ After:=sh. Zakres("A1"), _ Lookat:=xlPart, _ LookIn:=xlFormulas, _ SearchOrder:=xlByRows, _ SearchDirection:=xlPrevious, _ MatchCase:=False).Wiersz po błędzie Przejdź do 0 Funkcja zakończenia Funkcja Lastcol(sh As Arkusz) W przypadku błędu Wznów Dalej Lastcol = sh.Cells.Find(What:="*", _ After:=sh.Range("A1"), _ Lookat:=xlPart, _ LookIn:=xlFormulas, _ SearchOrder:= xlByColumns, _ SearchDirection:=xlPrevious, _ MatchCase:=False). Kolumna przy błędzie Przejdź do 0 Zakończ funkcję