Avatar billede Henning3 Nybegynder
09. juli 2010 - 13:45 Der er 9 kommentarer

Fjern html kode omkring tekst i excel regneark

hejsa

har brug for et scpript, som kan løbe rækkerne igennem i et excel ark og fjerne html kode, så det kun er tekst der er tilbage. Den tekst kunne evt. overføres til et andet ark...

html i kollonne A:
---------------------------------------------------------------

<h4><a id="link036" href="/" target="_self"

onmouseover="readScrollTop('naviBox','link036','/');">Tekst1 

<span>(abc)</span></a></h4>

<h4><a id="link037" href="/" target="_self"

onmouseover="readScrollTop('naviBox','link037','/');">Tekst2</a></h4>

<h4><a id="link038"..........

---------------------------------------------------------------

Output:

Tekst1 (abc)
Tekst2

Tak for det.

H.
Avatar billede supertekst Ekspert
09. juli 2010 - 14:58 #1
Er det </h4> der indikerer ny række?
Avatar billede supertekst Ekspert
09. juli 2010 - 15:26 #2
Koden under Ark1 - indsætter redigerede rækker i kolonne B

Dim antalRæk As Long, ræk As Long, indT As String, outT As String
Dim p1 As Integer, p2 As Integer, redRæk As Long, nyRæk As Boolean
Sub fjernHTML()
    antalRæk = ActiveCell.SpecialCells(xlLastCell).Row
    redRæk = 1
    Range("B:B").Delete
   
    For ræk = 1 To antalRæk
        indT = Cells(ræk, 1)
        If Right(indT, 1) = ">" Then
            nyRæk = True
        Else
            nyRæk = False
        End If
       
        outT = skanTekst(indT)
        If outT <> "" Then
            Cells(redRæk, 2) = Cells(redRæk, 2) & outT
            If nyRæk = True Then
                redRæk = redRæk + 1
            End If
        End If
    Next ræk
   
    Columns.AutoFit
End Sub
Private Function skanTekst(indTekst)
Dim f As Integer, udTekst As String
Dim tegn As String
    udTekst = ""
   
    For f = 1 To Len(indTekst)
        tegn = Mid(indTekst, f, 1)
        If tegn = "<" Then
            p1 = f
            p2 = 0
        Else
            If tegn = ">" Then
                p2 = f
                p1 = 0
            Else
                If p1 = 0 Then
                    udTekst = udTekst + tegn
                End If
            End If
        End If
    Next f
    skanTekst = udTekst
End Function
Avatar billede Henning3 Nybegynder
13. juli 2010 - 13:22 #3
Hej supertekst

Tak for det. Det kører bare. Der er bare én ting.

Der er 8 stk. white spaces foran alle rækker.

Kunne implementere at VBA scriptet deleter white space for-og-bag teksten?

På forhånd tak.
Avatar billede supertekst Ekspert
13. juli 2010 - 13:31 #4
Det skulle nok kunne lade sig gøre.

Vender lige tilbage....
Avatar billede Henning3 Nybegynder
13. juli 2010 - 13:38 #5
Det er bare super! Takker...
Avatar billede supertekst Ekspert
13. juli 2010 - 13:41 #6
Hvis dette ikke ændre resultatet - så har jeg brug for lidt mere info - men lad os nu se..

Rem Version 2
Rem =========
Dim antalRæk As Long, ræk As Long, indT As String, outT As String
Dim p1 As Integer, p2 As Integer, redRæk As Long, nyRæk As Boolean
Sub fjernHTML()
    antalRæk = ActiveCell.SpecialCells(xlLastCell).Row
    redRæk = 1
    Range("B:B").Delete
   
    For ræk = 1 To antalRæk
        indT = Cells(ræk, 1)
        If Right(indT, 1) = ">" Then
            nyRæk = True
        Else
            nyRæk = False
        End If
       
        outT = skanTekst(indT)
        If outT <> "" Then
            Cells(redRæk, 2) = Cells(redRæk, 2) & outT
            If nyRæk = True Then
                redRæk = redRæk + 1
            End If
        End If
    Next ræk
   
    Columns.AutoFit
End Sub
Private Function skanTekst(indTekst)
Dim f As Integer, udTekst As String
Dim tegn As String
    udTekst = ""
   
    For f = 1 To Len(indTekst)
        tegn = Mid(indTekst, f, 1)
        If tegn = "<" Then
            p1 = f
            p2 = 0
        Else
            If tegn = ">" Then
                p2 = f
                p1 = 0
            Else
                If p1 = 0 Then
                    udTekst = udTekst + tegn
                End If
            End If
        End If
    Next f
    skanTekst = Trim(udTekst)
End Function
Avatar billede Henning3 Nybegynder
05. august 2010 - 13:30 #7
det kører bare!

smider du et svar supertekst?

Og undskylder den lange svar tid... :-/
Avatar billede supertekst Ekspert
05. august 2010 - 13:39 #8
Ok - der er nu smidt et svarsom #2 - men ellers kan du få et frisk..
Avatar billede supertekst Ekspert
11. august 2010 - 10:49 #9
????????????????????????????
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester