Avatar billede denero Juniormester
11. august 2015 - 08:29 Der er 12 kommentarer og
1 løsning

Indrykket tekst i dokument fra tekstboks

Har eks. følgende tekst i en tekstboks på en userform:

Dette er første linje.
Dette er anden linje.
Dette er tredje linje.

Disse linjer skal "føres" (VBA) over i et dokument, hvor de skal stå under "et punkt" og indrykket, som vist nedenfor:

Forklar linjer:
                Dette er første linje.
                Dette er anden linje.
                Dette er tredje linje.

"Forklar linjer" står/er sat ind i dokument.
Avatar billede supertekst Ekspert
11. august 2015 - 14:00 #1
Rem Måske noget i den retning:

Private Sub UserForm_Initialize()
Rem indsætning af data til test
    With Me.TextBox1
        .Text = "AAA" & vbCrLf & "BBB" & vbCrLf & "CCC" & vbCrLf
    End With
End Sub
Private Sub CommandButton1_Click()
Dim linje As String, tabel As Variant
    linje = Me.TextBox1
    tabel = Split(linje, vbCrLf)
   
    With ActiveDocument
        For x = 0 To UBound(tabel)
            Selection.EndKey Unit:=wdStory
            Selection.TypeText Text:=vbTab & tabel(x) & vbCrLf
        Next x
    End With
End Sub
Avatar billede denero Juniormester
11. august 2015 - 14:37 #2
Kigger på det senere (møde). Jeg glemte at skrive, at der evt. godt kan være flere linjer, kan faktisk variere fra til gang,
Avatar billede supertekst Ekspert
11. august 2015 - 16:04 #3
Ok
Avatar billede denero Juniormester
12. august 2015 - 20:01 #4
Er lidt presset - er det ok med i morgen?
Avatar billede supertekst Ekspert
12. august 2015 - 23:11 #5
Ok..
Avatar billede denero Juniormester
14. august 2015 - 10:00 #6
Den tekstboks, som det drejer sig om, bruges til idtastning og der vil af den grund være "variende indhold" af antal linjer. Jeg kan evt sende filen, hvis jeg ikke har forklaret det godt nok.
Avatar billede supertekst Ekspert
14. august 2015 - 11:02 #7
Hvis hver linje afsluttes med Ctrl+Enter - så kan antallet af linjer være "uendeligt"

I version 2 ser VBA-koden således ud:

Private Sub CommandButton1_Click()
Dim linje As String, tabel As Variant
    linje = Me.TextBox1
    tabel = Split(linje, vbCrLf)
   
    With ActiveDocument
        For x = 0 To UBound(tabel)
            Selection.EndKey Unit:=wdStory
            Selection.TypeText Text:=vbTab & tabel(x) & vbCrLf
        Next x
    End With
End Sub
Avatar billede denero Juniormester
14. august 2015 - 12:05 #8
Der kommer en fejlmelding:
Compile error
Variable not defined
Avatar billede supertekst Ekspert
14. august 2015 - 12:55 #9
Det er nok x der ikke er defineret

Dim x AS integer

Under den Dim linje, der er i forvejen
Avatar billede denero Juniormester
14. august 2015 - 13:03 #10
Ja, den var ikke defineret.
Men det fungerer ikke helt godt i den opbygning mit dolument har, så hvis du har tid til at kigge, vil jeg sende det til dig og det haster ikke.
Avatar billede supertekst Ekspert
14. august 2015 - 13:27 #11
Du er velkommen til at sende dok.
Avatar billede supertekst Ekspert
15. august 2015 - 10:00 #12
Et svar
Avatar billede denero Juniormester
16. august 2015 - 09:39 #13
Tak for hjælpen.
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
Tag et kursus i Word og øg effektiviteten

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