Elektroda.pl
Elektroda.pl
X
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

VBA - Optymalizacja długo wykonującego się makra

jelczan123 23 Jul 2013 08:59 3102 9
  • #1
    jelczan123
    Level 9  
    Witam,
    Napisałem właśnie swoje pierwsze makro, ale jak widać żaden ze mnie programista. Makro działa długo, a na razie tylko 2 pliki podpiąłem pod nie. Czy jest ktoś w stanie pomóc mi tak, żeby działało szybciej, a przy tym żebym się połapał o co chodzi?:) Chodzi tu generalnie o to, żeby kopiowało z każdego pliku i każdego arkusza w każdym pliku wszystkie wpisane tam dane i przenosiło do jednego innego pliku który się nazywa podsumowanie, a potem jak poprzenosi to sortuje. Nie wiem też tylko czemu jak w sortowaniu przy ActiveWorkbook.Worksheets("offene").Sort.SortFields.Add Key:=Range("A2") zostawie A2 to sortuje ładnie według numerów które sa w kolumnie A, jesli jednak chciałbym wg dat które są w kolumnie G i zmieniam tam na G2 to już nie działa.
    Code: vbscript
    Log in, to see the code


    Będę wdzięczny jeśli uda się coś z tym zrobić. Pozdrawiam
  • #2
    cbrman
    Level 27  
    Będzie łatwiej jak załączysz przykładowy plik (usuń wrażliwe dane, byleby układ i typ danych był zachowany), bo tak to na pierwszy rzut oka to widzę kilka zbędnych select'ów.
  • #3
    jelczan123
    Level 9  
    W załączeniu plik podsumowanie w którym na 3 arkuszu powinno wykonać, się makro oraz jeden z plików z którego będzie kopiować wartości.
    Myślałem żeby tam zamiast zakresów do 1000 używać jakoś xldown do zaznaczania i kopiować tyle wartości ile potrzeba, ale nie wiem jak to zrobić. Będę wdzięczny za jakąś pomoc... i z tym sortowaniem to tez nie wiem o co chodzi:)
    Pozdrawiam
  • #4
    adamas_nt
    Moderator of Programming
    Hasełko zapodasz, czy mamy "hakierować"?
  • #5
    jelczan123
    Level 9  
    aaa.... zapomniałem że tam jest:P hasło : xxx
  • #6
    cbrman
    Level 27  
    Czy dane ze wszystkich, czy tylko z wybranych plików z folderu "U:\PL2\Verteilung NEW\" mają być wzięte do zestawienia zbiorczego?
  • #7
    jelczan123
    Level 9  
    ze wszystkich plików, będize ich 26, teraz są tylko 2 podpięte
  • #8
    jelczan123
    Level 9  
    I co da się tutaj coś zadziałać? ;)
  • Helpful post
    #9
    adamas_nt
    Moderator of Programming
    Niewiele, dlatego że najdłużej trwa otwieranie plików. Wywalając wszelkie zbędne select, copy-paste, itp - wychodzi coś takiego
    Code: vbscript
    Log in, to see the code
  • #10
    jelczan123
    Level 9  
    Dzięki wielkie, o to chodziło, skróciłeś mi wykonywanie makra z ponad 30 minut do 40 sekund...