Avatar billede tmor Nybegynder
25. august 2010 - 09:38 Der er 6 kommentarer og
1 løsning

Indsætte tekst med linjeskift i én Excel-celle vha. VBA...

Jeg har behov for at kunne indsætte kopieret tekst (fra PDF, Word, WWW osv.) i en Excel-celle, så linieskift (og gerne også formattering, men det er ikke et krav) bibeholdes og kun indsættes i dén celle. Hvis man bare copy-paster en sådan tekst, så indsættes linierne i forskellige celler :-(

Dvs. jeg er (formentlig) ude efter noget VBA-kode, der enten indsætter teksten i formellinjen, når man forsøger at indsætte i en celle, eller konverterer alle linjeskift til Excel-linjeskift (ALT+Enter/char(10)).

Håber nogen kan hjælpe...
Avatar billede supertekst Ekspert
25. august 2010 - 09:40 #1
Vil godt forsøge..
Avatar billede tmor Nybegynder
25. august 2010 - 11:10 #2
Lyder lovende :)
Avatar billede supertekst Ekspert
25. august 2010 - 15:07 #3
Rem Indsættes i relevante arkFane
Rem Marker det ønskede - kopier til udklipsholder.
Rem Indsæt (Ctrl+V)i den ønskede celle - selv om det fylder mere end 1 celle
Rem VBA-koden aktiveres via "Alt+F8" / vælg "indsætUdklip" / afspil makro
Public Sub indsætUdklip()
Dim areal As Variant
Dim område, førsteCelle, række
    område = Selection.Address
    areal = Split(område, ":")
   
    Set mydata = New DataObject
    mydata.GetFromClipboard
    tekst = mydata.GetText
   
    Range(område).ClearContents
   
    Range(areal(0)).Select
    Selection = mydata.GetText(1)
   
    række = ActiveCell.Row
    Rows(række).Select
    Selection.RowHeight = 15
End Sub
Avatar billede tmor Nybegynder
26. august 2010 - 09:22 #4
Tak - tester det senere på dagen..
Avatar billede tmor Nybegynder
31. august 2010 - 11:54 #5
Det ser godt ud, men kan man undgå den der firkant ved alle linjeskift?
Avatar billede supertekst Ekspert
31. august 2010 - 12:02 #6
Måske - skal prøve
Avatar billede supertekst Ekspert
31. august 2010 - 18:21 #7
Rem VERSION 2
Rem =========
Rem Indsættes i relevante arkFane
Rem Marker det ønskede - kopier til udklipsholder.
Rem Indsæt (Ctrl+V)i den ønskede celle - selv om det fylder mere end 1 celle
Rem VBA-koden aktiveres via "Alt+F8" / vælg "indsætUdklip" / afspil makro
Public Sub indsætUdklip_2()
Dim areal As Variant, tekst As String, tekst2 As String, tekst3 As String
Dim område, førsteCelle, række
    område = Selection.Address
    areal = Split(område, ":")
   
    Set mydata = New DataObject
    mydata.GetFromClipboard
   
    Range(område).ClearContents
   
    tekst = mydata.GetText(1)
    tekst2 = Replace(tekst, Chr(13), "")
    tekst3 = Replace(tekst2, Chr(11), Chr(10))
   
    Range(areal(0)).Select
    Selection = tekst3
   
    række = ActiveCell.Row
    Rows(række).Select
    Selection.RowHeight = 15
End Sub
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