VBA - Použití funkce IF pro 2 buňky
Problém
Všiml jsem si neúspěšně všude pro odpověď na otázku, jak vytvořit smyčku IF pro následující situaci:
- Mám Excel list s různými slovy, např. jména, která se pohybují po sloupci A.
- Chci vytvořit smyčku, kde pokud dvě buňky mají různá jména, pak se mezi ně vloží 2 prázdné řádky.
např.
Buňka A1: Anne
Buňka A2: Anne
Buňka A3: Bob
Buňka A4: Charlie
Takže mezi A1 a A2 budou vloženy dva řádky mezer. Mezi Bob & Charlie se vloží další 2 prázdné řádky.
Řešení
Zkuste toto makro
když vyvoláte makro ...
Zobrazí se vstupní pole. vyplňte počáteční adresu buňky např. A10.
Sub test () Sloupce ("A: A"). Seřadit klíč1: = rozsah ("A1"), Order1: = xlAscending, záhlaví: = xlGuess Dim j jako celé číslo, k jako celé číslo, m jako celé číslo, r jako řetězec r = InputBox ("zadejte první buňku pod odkaz např. A10") m = Rozsah (r) .Row j = Rozsah ("A10") Konec (xlDown) .Row 'j je poslední řádek Pro k = j Pro m + 1 Krok -1 Pokud buňky (k, 1) Buňky (k - 1, 1) Pak Rozsah (Buňky (k, 1), Buňky (k + 1, 1)) EntireRow.Insert End If Next k End Sub
Poznámka
Díky venkat1926 za tento tip na fóru.