19. september 2013 - 17:07Der er
4 kommentarer og 1 løsning
Vælge specifik data til venstre for tegn i celle
Jeg har brug for en VBA kode som kan hente et stykke data ud af en celle i Excel, som altid står til venstre for et specifik tegn. Dataen består af et sæt initialer, som kan være både to, tre og fem karakterer langt, så jeg har derfor brug for hjælp, da jeg ikke kan regne ud hvordan den skal kringles. Den samlede mængde data består altid af et fornavn, initialer, brugernavn samt domæne og kan indeholde et mellemnavn. Nogle gange er initialer og brugernavn ens og initialer kan både fremgå med småt og stort. Et par eksempel:
Bo BK [Eksperten\BK] Ole Bole OBH [Eksperten\OBH] Knud kn [Eksperten\knudsø]
Så det jeg har brug for er, at initialer, som altid fremgår lige til venstre for tegnet [, skal trækkes ud i en variabel til kopiering til en celle ved siden af.
Sub udtrækInitialer() Const tegn = "[" Dim p As Byte, initial As String p = InStr(Range("A1"), tegn) If p > 0 Then inital = Trim(Left(Range("A1"), p - 1)) End If End Sub
Tak for input. Jeg kan ikke få det til at virke. Data står i kolonne E og der skal outputtes til Kolonne H. Har rettet koden til. Er det i den rigtige retning jeg går, eller har jeg misforstået konceptet?
Const tegn = "[" Dim p As Byte, initial As String p = InStr(Range("E2"), tegn) If p > 0 Then inital = Trim(Left(Range("E2"), p - 1)) Sheets("Ark1").Range("H2") = initial End If
Der bliver ikke outputtet noget. Hvis vi tager udgangspunkt i første eksempel, så er det BK jeg ønsker outputtet til en anden celle. Data i cellen der hentes fra skal bevares som de er fra starten af.
Årsagen til at der ikke skete noget i 1. version var, at der manglede et "i" i sætningen: inital = Trim(Left(Range("E2"), p - 1)) og "i" er i dennne sætning: Sheets("Ark1").Range("H2") = initial
Version2: Sub udtrækInitialer() Sub test2() Dim tabel As Variant Const tegn = "[" Dim p As Byte, initial As String p = InStr(Range("E2"), tegn) If p > 0 Then initial = Trim(Left(Range("E2"), p - 1)) tabel = Split(initial, " ")
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.