Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Excel VBA - Kopiowanie danych do innego formularza

jezy 01 Maj 2013 10:27 3972 4
  • #1 01 Maj 2013 10:27
    jezy
    Poziom 9  

    Witam

    Nie mogę sobie poradzić z kopiowaniem danych do innego skoroszytu.
    Posiadam główny skoroszyt o nazwie " Dane" do którego pobierane są różnego rodzaju dane. Chciał bym mieć możliwość kopiowania określonych danych ze skoroszytu "Dane" do innego skoroszytu GOW.
    Dane muszą zostać skopiowane " specjalnie" bez formuł. Utrudnieniem będzie kopiowanie danych do pierwszego wolnego wiersza w kolumnie B w różnych arkuszu

    np: z skoroszytu " Dane" arkusza OPG chcę skopiować zakres danych B5:M9 do skoroszytu "GOW" w arkuszu GO1 w pierwszy wolny wiersz w kolumnie B. następnie operacja wykonana będzie dla innych zakresów danych ze skoroszytu "Dane" do skoroszytu "GOW" w arkuszu GO2 w pierwszy wolny wiersz w kolumnie B

    Kod: vb
    Zaloguj się, aby zobaczyć kod


    Po zakończeniu kopiowania wszystkich danych powinien wyskoczyć komunikat informujący o skopiowaniu danych i zapytaniu o zapisaniu zmian i zamknięciu skoroszytu do którego kopiowano dane.

    0 4
  • #2 01 Maj 2013 21:04
    adamas_nt
    Moderator Programowanie

    Stosujesz złe nazewnictwo. Arkusz, zakładka... i być może dlatego wszystko Ci się myli. Poczytaj o podstawach, hierarchii i nazwach obiektów i sposobach odwołań.
    Spróbuj nagrać makro kopiowania pomiędzy arkuszami na początek. Spróbuj następnie podstawić inne argumenty.

    Na Twoim miejscu zrezygnowałbym jednak z Select-Copy-Paste na rzecz prostego przypisania.
    Znalezienie pierwszego wolnego też nie powinno być problemem. Wykorzystujesz zdaje się dość popularną funkcję Rona B. (Last).

    0
  • #3 04 Maj 2013 12:20
    jezy
    Poziom 9  

    Utworzyłem makro które kopiuje zakres danych z jednego skoroszytu "Dane" do drugiego "GOW" w pierwszy wolny wiersz kolumny B arkusza "GO1" i "GO2"

    Niestety formuła nie jest idealna, widzi wstawioną tabelę w arkuszach "GO1" i "GO2" jako zajęty wiersz i wkleja wszystkie dane pod tabelą.

    Właściwe działanie jakie powinna wykonać formuła to wklejenie zakresu danych do arkuszy "GO1" i "GO2" w tabelę w pierwszym wolnym wierszu w kolumnie B.

    Jak można to ulepszyć?

    Kod: vb
    Zaloguj się, aby zobaczyć kod

    0
  • Pomocny post
    #4 04 Maj 2013 18:24
    adamas_nt
    Moderator Programowanie

    Hmm. Jak się orientujesz w tych wszystkich GoTo?

    To samo, uzupełnione, w innej wersji.

    Kod: vb
    Zaloguj się, aby zobaczyć kod

    0
  • #5 04 Maj 2013 21:22
    jezy
    Poziom 9  

    Kopiowanie działa bez zarzutów. Dzięki za pomoc.

    szacun.

    0