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

Excel - makro - wstawianie pustych wierszy

22 Mar 2013 14:52 6837 9
  • Poziom 7  
    Mam takie pytanko: czy jest możliwość stworzenia takiego makra, żeby wstawiało puste wiersze, ale nie przed kazdym kolejnym wierszem jak we wzorze poniżej

    jest tak:
    1 wrocław
    2 kraków
    3 kraków
    4 kraków
    5 warszawa
    6 warszawa

    a chciałabym, żeby było tak:

    /pusty wiersz/
    1 wrocław
    /pusty wiersz/
    2 kraków
    3 kraków
    4 kraków
    /pusty wiersz/
    5 warszawa
    6 warszawa

    a jakby jeszcze przenosiło nazwę z wiersza poniżej, to byłoby extra.

    Niewiele miałam do czynienia z makrami, udało mi sie stworzyć tylko takie;

    Sub Wstawianie_wierszy()
    Dim i As Long
    Const max = 200 ' w zależności od liczby wierszy

    Application.ScreenUpdating = False
    For i = 2 To max Step 2
    ActiveSheet.Rows(i).Insert
    Next i
    Application.ScreenUpdating = True

    End Sub


    ale to wstawia pusty wiersz powyzej każdego wiersza.

    Mam nadzieję, że jasno opisałam o co mi chodzi
  • Poziom 7  
    SUPER! Właśnie o to mi chodziło, ale mam jeszcze pytanko: czy można byłoby zrobić jeszcze coś takiego, że po dodaniu wiersza nazwa zostałaby tylko w tym dodanym wierszu /zeszyt4 - tylko pogrubione komórki/ - to chyba musi być osobne makro? jeszcze raz dzięki :D
  • Pomocny post
    Moderator Programowanie
    Nie, wystarczy drobna modyfikacja. Podmień makro w module "Zesztyt4" na
    Kod: vb
    Zaloguj się, aby zobaczyć kod
  • Poziom 7  
    Dziękuję bardzo, moje zestawienie coraz lepiej wygląda i przede wszystkim "szybko" się robi, a jest tych wierszy trochę... a gdybym miała te moje dane z miastami w kolumnie np. "C" i chciałabym, żeby takie makro zadziałało do tej kolumny to jest taka możliwość?
  • Pomocny post
    Poziom 40  
    Ponieważ kolumna C to trzecia kolumna więc zamień we wszystkich Cells() jedynkę po przecinku na trójkę czyli ,1) na ,3) np.:
    Cells(1,1) na Cells(1,3)

    i dla pewności w lini kodu
    OstWrs = Cells(Rows.Count, 3).End(xlUp).Row
  • Poziom 7  
    WIELKIE DZIĘKI!
  • Poziom 7  
    Witam, kontynuując temat mam jeszcze zapytanie o takie makro:
    1) w tych dodanych wierszach w kolumnie "A" wpisany byłby tekst "zrobione"
    2) w kolumnie "B" ponumerowane tylko te dodane wiersze
    3) w kolumnie "C" w miejsce wyczyszczonych danych wpisany tekst "ok"
    czy da się coś takiego zrobić? Będę bardzo wdzięczna
  • Pomocny post
    Poziom 40  
    Sprawdz poniższy kod. Powinno działać ale pisze z pamięci.
    Kod: vb
    Zaloguj się, aby zobaczyć kod
  • Poziom 7  
    Działa! o to właśnie chodziło. Jeszcze raz dziękuję