2017-09-13 1 views
0

Mon objectif est de copier un texte au format multiligne de Word vers une feuille de calcul Excel dans une seule cellule en utilisant une macro VBA.VBA Copier du texte multiligne à partir de Word coller dans la cellule Excel

Maintenant, j'ai un texte multiligne qui a besoin de deux cellules.

Ceci est mon code actuel:

With oWB.Worksheets("EPICS")   
    ' Insert DESCRIPTION - todo 
    ' 
    ' HEADING xyz is selected, move one down and go to Pos1 
    Selection.MoveDown Unit:=wdLine, Count:=1 
    Selection.HomeKey Unit:=wdLine 

    ' Save current line number (BEGIN) 
    BeginText = Selection.Range.Information(wdFirstCharacterLineNumber) 

    ' Go to the first table and one move up 
    Selection.GoTo What:=wdGoToTable, Which:=wdGoToNext, Count:=1, Name:="" 
    Selection.MoveUp Unit:=wdLine, Count:=1 

    ' Save current line number (END) 
    EndText = Selection.Range.Information(wdFirstCharacterLineNumber) 
    RangeToSelect = EndText - BeginText 

    Selection.MoveUp Unit:=wdLine, Count:=RangeToSelect, Extend:=wdExtend 
    Selection.Copy 

    .Cells(1, 1).PasteSpecial xlPasteValues 
End With 

Cela crée les éléments suivants: enter image description here

Je voudrais avoir les éléments suivants: enter image description here

Toute idée comment je peux gérer cela ou toute entrée?

+0

La dernière ligne de code sera 'ActiveSheet.Cells (1, 1) .Value = txt1 & "" & Txt2'. Mais tout ce que vous avez avant ce point est très loin de ce dont vous avez besoin. Commencez par décider si vous souhaitez exécuter le code à partir de la feuille de calcul Excel ou du document Word. Le google pour quelque chose comme, "Comment ouvrir un document Word dans Excel" (ou l'inverse.) Vous trouverez le code de base sur lequel vous pouvez construire – Variatus

+0

Non, non, non, j'ai un fichier Word. macro de mots Cette macro copie le texte entre un en-tête et le premier tableau après ce titre Mon problème est que le texte entre les deux est multine Mon objectif: Pour obtenir ce texte dans une cellule Excel Mon statut actuel Chaque ligne en word, est dans une cellule en excel .... – Markus

+0

@Variatus si vous voulez je vous enverrai le code par message, c'est assez long ... – Markus

Répondre

1

Au lieu de
...
Selection.Copy
.Cells(1, 1).PasteSpecial xlPasteValues
...
code
.Cells(1, 1).Value=Selection.text

+0

Merci beaucoup! – Markus