Avatar billede rasmus1970 Mester
10. maj 2023 - 10:25 Der er 2 kommentarer

Kopier celle fra excel til word VBA

Hej
ved hjælp af vba har jeg behov for at kopiere en celle værdi M18 ind i tabel i word på plads b17.

Kan man det ?
Avatar billede Tom K. Forsker
14. juli 2023 - 12:27 #1
Sub KopierTilWord()
    Dim WordApp As Object
    Dim WordDoc As Object
    Dim WordTable As Object
    Dim ExcelRange As Range
   
    ' Åbn Word-programmet
    On Error Resume Next
    Set WordApp = GetObject(Class:="Word.Application")
    On Error GoTo 0
   
    If WordApp Is Nothing Then
        ' Hvis Word ikke er åbent, oprettes en ny instans af Word
        Set WordApp = CreateObject(Class:="Word.Application")
        WordApp.Visible = True ' Gør Word-vinduet synligt
    End If
   
    ' Åbn eller opret et Word-dokument
    Set WordDoc = WordApp.Documents.Add
   
    ' Definer tabellen og cellen, hvor værdien skal indsættes
    Set WordTable = WordDoc.Tables(1) ' Hvis der er flere tabeller, kan du ændre tallet her
    Set ExcelRange = ThisWorkbook.Sheets("ArkNavn").Range("M18") ' Erstat "ArkNavn" med navnet på dit Excel-ark
   
    ' Kopier cellens værdi til udklipsholderen
    ExcelRange.Copy
   
    ' Indsæt værdien i Word-tabellen
    WordTable.Cell(17, 2).Range.PasteSpecial
   
    ' Rens udklipsholderen
    Application.CutCopyMode = False
   
    ' Luk Word-dokumentet
    WordDoc.Close SaveChanges:=False
   
    ' Luk Word-programmet
    WordApp.Quit
   
    ' Ryd hukommelsen
    Set WordTable = Nothing
    Set WordDoc = Nothing
    Set WordApp = Nothing
End Sub
Avatar billede rasmus1970 Mester
17. juli 2023 - 12:27 #2
Den laver fejl i det gule ?

    Dim oWord As Object
    Dim oWordDoc As Object
    Dim i As Integer
    Dim WordTable As Object
    Dim ExcelRange As Range
    Dim oTable As Table
   
 
    On Error GoTo myOpen
    navn = CurDir()
   
    Set oWord = GetObject(, "Word.application")
    GoTo further
   
myOpen:
    Set oWord = CreateObject("Word.application")
   
further:
    oWord.Documents.Open "c:\katalog.docx"
    oWord.Visible = True
    Sheets("Data").Visible = True
    Sheets("Data").Activate
   
  '------------------
    Set WordTable = oWordDoc.Tables(1) ' Hvis der er flere tabeller, kan du ændre tallet her
    Set ExcelRange = ThisWorkbook.Sheets("Data").Range("S23")
 
    ' Kopier cellens værdi til udklipsholderen
    ExcelRange.Copy
 
    ' Indsæt værdien i Word-tabellen
    WordTable.Cell(1, 1).Range.PasteSpecial
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

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