Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

[Solved] Excel Makro - wstawianie pustych wierszy i kopiowanie

tomaszm90 30 Nov 2021 14:07 342 13
  • #1
    tomaszm90
    Level 8  
    Witam
    Proszę o pomoc w napisaniu makra które by ułatwiło mi pracę i skróciło czas jej wykonywania.

    Mam następujący problem
    W bazie danych mam 4 arkusze i chciałbym stworzyć makro które wstawiało by 5 wierszy pod każdą nazwę kraju w Arkuszu o nazwie Kraje1 i Kraje2, następnie z Arkusza Kraje1 lub Kraje2 (nie ma znaczenia z którego bo lista zawsze jest taka sama) kopiowało nazwę kraju z komórki A2 i wstawiało w Arkuszu Dane1 w komórce J1 skopiowaną nazwę danego kraju, następnie z Arkusza Dane1 kopiowało by dane (jako wartości) z komórek A8:D12 do Arkusza Kraje1 we wstawione wcześniej wiersze dla danego kraju oraz do Arkusza Kraje2 dane z Arkusza Dane2 z komórek
    A21:D25. I analogicznie dla każdego kraju z listy (lista krajów jest za każdym razem inna)
    Przykładowa baza w załączniku

    Z góry dziękuję za pomoc. Pozdrawiam
  • Helpful post
    #2
    PRL
    Level 40  
    Code: vbscript
    Log in, to see the code
  • #3
    tomaszm90
    Level 8  
    Dziękuje za pomoc
    Makro działa tylko 2 rzeczy nie do końca robi tak jak chciałem (może wcześniej się źle wyraziłem). Makro w komórkę J1 w zakładce Dane1 wstawia całą listę krajów, mi natomiast chodziło aby w komórkę J1 wstawiał nazwy wg kolejności z listy.
    Np. Komórka J2= Albania makro kopiuje wszystkie dane policzone dla Albanii do arkuszy Kraje1 i Kraje2, w następnym kroku
    Komórka J2=Armenia makro kopiuje wszystkie dane policzone dla Armenii do arkuszy Kraje1 i Kraje2 itd. aż do ostatniego kraju z listy
  • #5
    tomaszm90
    Level 8  
    Witam
    Chodzi o to podam przykład działania makra
    Z Arkusza kraje1 program kopiuje nazwę jednego kraju z listy- pierwszego i wstawia nazwę tego kraju w komórkę J1 w arkuszu Dane1, następnie kopiuje dane do 2 arkuszy , następnie przechodzi do następnego kraju z listy drugiego i wstawia nazwę w komórkę J1 (kasując poprzednia) dane się przeliczają dla drugiego kraju i kopiuje i podobnie dla 3, 4 i aż do końca z listy
  • #6
    PRL
    Level 40  
    To ja też podam przykład...
    Jak makro zacznie działać, to najpierw w J1 znajdzie się pierwszy kraj, a skończy ostatnim krajem. Bez sensu.
    Przecież nie będziesz widział zmian w J1!
  • #7
    tomaszm90
    Level 8  
    Na podstawie zmian w komórce J1 przeliczają się dane w bazie, tam wstawione są funkcje jeżeli,mnie interesuje wartość skopiowanych danych obliczonych na podstawie zmian komórki J1
  • #8
    PRL
    Level 40  
    Code: vbscript
    Log in, to see the code
  • #9
    tomaszm90
    Level 8  
    Makro dla każdego kraju wstawia te same dane,
    Umieściłem w załączeniu wycinek rzeczywistej bazy, i zrobiłem przykład dla 2 krajów
  • Helpful post
    #10
    PRL
    Level 40  
    Poproś kogoś innego.
  • #11
    tomaszm90
    Level 8  
    Ok. Dziękuję za pomoc
  • Helpful post
    #12
    PRL
    Level 40  
    Ja po prostu nie wiem o co Ci chodzi.:)
  • #13
    tomaszm90
    Level 8  
    Przerobiłem sobie Makro tak jak poniżej i teraz działa :)
    Jeszcze raz dziękuję
    Pozdrawiam

    Code: vbscript
    Log in, to see the code
  • #14
    tomaszm90
    Level 8  
    Przerobiłem sobie Makro tak jak poniżej i teraz działa :)
    Jeszcze raz dziękuję
    Pozdrawiam

    Code: vbscript
    Log in, to see the code


    Dodano po 4 [godziny] 10 [minuty]:

    Program działa poprawnie