2016-05-11 14 views
0

Ich möchte eine Tabelle aus dem iPython-Notizbuch in ein Word-Dokument kopieren. Ich verwende Word für Mac 2011. Die Tabelle ist eine Standard-Pandas Ausgang und sieht wie folgt aus:Kopieren Sie eine Tabelle aus dem iPython-Notizbuch in Word?

enter image description here

Wenn ich Apfel + C, um die Tabelle zu kopieren und dann in ein Word-Dokument einfügen, ich bekomme diese:

enter image description here

Sicherlich muss es einen einfacheren Weg geben?

Erstellen einer Tabelle mit der gleichen Anzahl von Zeilen/Spalten in Word und dann versuchen, die Zellen dort einfügen, funktioniert auch nicht.

Ich denke, ich könnte die Tabelle screenshot, aber ich würde gerne die Rohdaten in das Dokument aufnehmen, wenn möglich.

+0

ich mit irgendetwas in dieser Frage nicht vertraut bin mit Ausnahme (Win) Wort, aber ... Can Sie geben die Tabellendaten im zeichengetrennten Format aus? Entweder als Datei oder als String? Wenn ja, kann das in/in das Dokument eingefügt/geschrieben und mit der ConvertToTable-Methode des Word-Objektmodells in eine Tabelle konvertiert werden. –

+0

Warum der Downvote? – Richard

Antwort

0

Das Problem in diesem Fall (aus der Word-Perspektive) ist nicht das Tabellenlayout - es ist das Absatzlayout. Jeder Absatz hat rechts und links einen deutlichen Einzug und mehr Platz davor/danach als normalerweise gewünscht.

Ich denke nicht, dass eine der Einfügeoptionen (z. B. Inhalte einfügen) in Word hilft, es sei denn, Sie fügen als unformatierten Text, dann wählen Sie den Text, in eine Tabelle konvertieren und dann von dort fortfahren.

Aber selbst ein einfaches Word-VBA-Makro wie dieses wird Sie mit etwas etwas überschaubarer lassen. (Wählen Sie eine Tabelle aus, in die Sie kopiert haben, und führen Sie das Makro aus). Ein bisschen mehr Arbeit am Code würde es wahrscheinlich ermöglichen, dass Sie die meiste Zeit die meiste Formatierung erhalten.

Sub fixupSelectedTable() 
With Selection.Tables(1).Range.ParagraphFormat 
    .LeftIndent = 0 
    .RightIndent = 0 
    .SpaceBefore = 0 
    .SpaceAfter = 0 
    .LineSpacingRule = wdLineSpaceSingle 
End With 
End Sub 

Wenn Sie mehr vertraut mit Applescript sind, sieht das Äquivalent etwas wie folgt aus:

-- you may need to fix up the application name 
-- (I use this to ensure that the script uses the Open Word 2011 doc 
-- and does not try to start Word for Mac 15 (2016)) 
tell application "/Applications/Microsoft Office 2011/Microsoft Word.app" 
    tell the paragraph format of the text object of table 1 of the text object of the selection 
     set paragraph format left indent to 0 
     set paragraph format right indent to 0 
     set space before to 0 
     set space after to 0 
     set line spacing rule to line space single 
    end tell 
end tell 
Verwandte Themen