Excel - Makro pro formátování zprávy

Problém

Doufám, že můžu říct, co hledám způsobem, který dává smysl všem. Mám zákaznickou zprávu, kterou provozuji a exportuje ošklivým způsobem.

Vypadá to takto:

 Adresa Suburb Stav PSČ Dodací pokyny Telefonní číslo Faxové číslo E-mailová adresa 

Všechny výše uvedené informace jsou ve sloupci A a já bych chtěl vytvořit makro, které má informace ve sloupci AF, takže každý nadpis má nový sloupec.

Dokážu nahrát opravdu základní makra, takže asi budu potřebovat někoho, kdo mi to napíše, takže můžu jednoduše zkopírovat a vložit * omlouvám *.

Doufejme, že je to pro někoho opravdu jednoduché a jsou ochotni mi pomoct. Jakékoliv návrhy / rady jsou velmi oceňovány!

Řešení

Objektivní:

Pro rozdělení řádků je buňka a každý řádek se přesune do nové buňky ve stejném řádku.

Předpoklady:

1. Začátek dat na ROW 2

2. Data jsou uvedena ve sloupci A

3. Sloupec vedle A je místo, kde musí být data vyplněna

4. Každý řádek v datových buňkách by měl být přesunut do nové buňky ve stejném řádku

Kroky:

1. Přečtěte si předpoklady

2. Vytvořte zálohu souboru

3. Stiskněte ALT + F11 a vložte nový modul

4. Vložte kód (po krocích)

5. Proveďte kód

Kód:

 Sub SpiltData () Dim lMaxRows jako dlouhý Dim lRowBeanCounter jako dlouhý Dim vPos jako Varianta Dim sHold Jako String Dim sTemp As String Dim iCellCounter Jako Integer Dim lStartAtRow As long lStartAtRow = 1 lMaxRows = Buňky (Rows.Count, "A"). xlUp) .Row Pro lRowBeanCounter = lStartAtRow Pro lMaxRows sTemp = Buňky (lRowBeanCounter, "A") iCellCounter = 2 Do Zatímco sTemp "" vPos = 0 vPos = InStr (1, sTemp, Chr (10)) Pokud vPos> 0 Pak sHold = Vlevo (sTemp, vPos - 1) sTemp = Trim (Mid (sTemp, vPos + 1)) Else sHold = sTemp sTemp = "" Konec Pokud iCellCounter = iCellCounter + 1 buňky (lRowBeanCounter, iCellCounter) = sHold Loop Další lRowBeanCounter End Sub 

Poznámka

Díky rizvisa1 za tento tip na fóru.

Předchozí Článek Následující Článek

Nejlepší Tipy