logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

[VBA] Jak skopiować dane z Excela do pustej komórki w innym pliku?

krysteeeky 08 Lip 2019 13:12 507 16
REKLAMA
  • #1 18050180
    krysteeeky
    Poziom 4  
    Witam, pisze w sprawie kodu z pętla w VBA w Excelu, gdyż zawsze mialem problem z pętlami i nie moge sobie poradzić.

    Potrzebuje program który skopiuje wartość z pliku pierwszego o nazwie Zamówienie z komórki "C15" do komórki w pliku ZSO "L2". Następnie będzie kopiować komórki, które są "" w zasiegu B23:B52 z pliku pierwszego do pliku ZSO i wklejać będzie je do L2:L. Później przy wykasowaniu danych z pierwszego pliku i wpisaniu nowych chcę żeby zostały skopiowane i dopisaly się w pliku ZSO pod wcześniejszymi wklejonymi danymi. Coś jakby szukało pustej komórki w kolumnie L.
    A ta wartość z komórki C15 też będzie nowa to musi się wpisać w pierwszy wiersz nowo skopiowanego ciągu liczb.

    Z góry dziękuje za pomoc
  • REKLAMA
  • #3 18050357
    krysteeeky
    Poziom 4  
    Bardzo przepraszam, całkiem się pomyliłem.

    Wartość z C15 pierwszego pliku ma być kopiowana do L2 pliku drugiego.
    Wartości z B23:B52 pierwszego pliku maja być kopiowane do AP2:AP.
    Następnie:
    Nowe wartości B23:B52 maja być skopiowane pod te wcześniej wklejone w kolumnie AP.
    A nowa wartość C15 ma być w tym samym wierszu co zaczynają się nowe wartości (wklejone) do drugiego pliku. I taką pętle potrzebuje żeby ciągle sie dodawało.
    Posyłam obrazek, o co chodzi.
    Kolumna AI to tak jakby kolumna L, tylko jest między nimi taki odstep że musialem wybrać dla podglądu inna kolumne.
    Czyli tu widać trzy ciągi danych bo trzy wartości w kolumnie AI
    [VBA] Jak skopiować dane z Excela do pustej komórki w innym pliku?
  • REKLAMA
  • #5 18050374
    krysteeeky
    Poziom 4  
    To wartości które w B23:B52 będą wpisywane na nowo. Tworze formularz zamówienia który będzie otwierany na nowo pusty i będą uzupelniane dane i na bieżąco kopiowane do tego drugiego pliku.
    Jak potrafisz zrobić bez pętli szukającej wolnej komórki to nie musi być :D
  • #6 18050380
    PRL
    Poziom 41  
    W załączonym pliku jest przycisk.
    Po uzupełnieniu danych naciśniecie spowoduje skopiowania danych do ZSO.
    Co jeszcze nie tak?
    Jakiej 'wolnej komórki'???

    P.S. Kolumny sam sobie zmień.
    Pomogłem? Kup mi kawę.
  • #7 18050406
    krysteeeky
    Poziom 4  
    A więc tak powinien wyglądać kod po zmianie? Bo dalej coś nie działa, błędu nie wywala ale nie kopiuje.
    [VBA] Jak skopiować dane z Excela do pustej komórki w innym pliku?
  • #9 18051634
    krysteeeky
    Poziom 4  
    Sub ZSO()
    Application.ScreenUpdating = False
    Set a = ActiveWorkbook.Sheets(1)
    Set b = Workbooks.Open(ActiveWorkbook.Path & "\ZSO.xlsx")
    l = b.Sheets(1).Cells(Rows.Count, "ap").End(xlUp).Row + 1
    b.Sheets(1).Cells(2, 12) = a.Range("C15"): l = l + 1
    a.Range("B23:B52").Copy b.Sheets(1).Range("ap" & l)

    Application.ScreenUpdating = True
    End Sub

    Pozmieniałem trochę ten kod bez pętli i działa, ale komórke C15 kopiuje tylko do jednego miejsca L2 a miało też kopiować w ten sam wiersz co nowy ciąg liczb w kolumnie L. Mowa o tabeli w pliku docelowym.

    Zaznaczyłem na screenie gdzie w tym wypadku powinien być też skopiowany tekst z komórki C15 z pierwszego pliku.

    EDIT.
    Dlaczego jak stworzyłem tabele z nagłówkiem od A1 do AT100 to wartość do L2 jest kopiowana a zaś ten ciąg liczb do AP nie...
    Bez tabeli się kopiuje to i to.

    Dziękuje ci za pomoc.

    [VBA] Jak skopiować dane z Excela do pustej komórki w innym pliku?
  • REKLAMA
  • #11 18051996
    krysteeeky
    Poziom 4  
    [VBA] Jak skopiować dane z Excela do pustej komórki w innym pliku?

    Chodzi dokładnie o to, aby to co jest w L2 było też na początku nowego ciągu liczb tylko w kolumnie L.
    I tak jak jest na screenie, czyli żadnych odstępów między danymi w AP.
    Dziękuję
  • REKLAMA
  • #13 18052021
    krysteeeky
    Poziom 4  
    SUPER!! to jest to :D
    tylko dlaczego gdy mam nagłówki tabeli w wierszu pierwszym to nie działa? główkuje nad tym i nie wiem o co chodzi.
  • #15 18052068
    krysteeeky
    Poziom 4  
    Mowa o tabeli w pliku docelowym. Komórka AP2 nie jest kopiowana tylko do kolumny AP mają być kopiowane komórki B23:B52 rozpoczynając wklejanie do komórki AP2.
  • #17 18052138
    krysteeeky
    Poziom 4  
    Bardzo bym chciał... Ogólnie dobrze jest ten kod napisany tylko jak jest tekst/liczby w AP1. A jak jest to już nagłówek tabeli to nic nie wskakuje do kolumny AP.
    Może przerobienie kodu tak, że wklejanie zaczyna się w AP2 by pomogło? a potem jeden ciąg liczb pod drugim.
REKLAMA