Trommeslageren Skrevet 10. februar 2018 Del Skrevet 10. februar 2018 Hei dere, Håper noen kan hjelpe meg med en VBA-funksjon jeg ikke helt klarer se hvordan jeg skal løse. Jeg har en lang liste med adresser, som eksempelvis: Myrdalsvegen 10, 12, 14, Myrdalshovden 22, 26A-F, Bergen Moholt Allé 9, 11, 13, Fiolsvingen 3, 5, 7, Trondheim Jeg forsøker å lage en makro som henter ut de individuelle adresse, slik: Myrdalsvegen 10, Bergen Myrdalsvegen 12, Bergen Myrdalsvegen 14, Bergen Myrdalshovden 22, Bergen Myrdalshovden 26A-F, Bergen ... Jeg har forsøkt å bruke LEFT, RIGHT, FIND i en loop, men det ble ikke spesielt elegant, og jeg fikk det ikke til å fungere helt som jeg ville. Er det noen som har noen finurlig løsninger eller idéer? Takk så meget på forhånd Lenke til kommentar
Harald Staff Skrevet 11. februar 2018 Del Skrevet 11. februar 2018 Hei trommeslager! Jobben er for stor og eksemplene alt for få til at du kan vente er ferdig løsning. Men jeg ville tenkt i disse baner: Du leser linje for linje. Der fyller du strengvariabel Byen med siste ord, som du finner etter siste komma, funksjon InstrRev. Resten splitter du ved kommaene slik Dim S() as string ... S = Split(langtekst, ",") Så sjekker du hver S om hvorvidt det er et ord eller ikke For i = lbound(S) to ubound (S) If ErOrd(S(i)) then ... da har du en ny gate, hvis ikke har du et nytt gatenummer. Putt i respektive Variabler Gaten og Numret, og skriv Gaten, Numret og Byen i en ny linje for hver ny Numret. Funksjonen ErOrd(Tekst as string) as boolean må du skrive selv, det er litt av moroa. Hvis to første tegn av Tekst er bokstaver så tror jeg du treffer riktig godt. Beste hilsen Harald Lenke til kommentar
Harald Staff Skrevet 11. februar 2018 Del Skrevet 11. februar 2018 Sorry, ser nå at det ikke er komma før første gatenummer. Da må du splitte Gatenavnet selv ved første tall, altså ved sann ErOrd. Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå