2017-09-23 2 views
0

Ich muss eine benutzerdefinierte Software erstellen, die Excel-Dateien in eine formatierte Word-Datei konvertieren würde.Verwenden von Excel-Dateien zum Erstellen formatierter Word-Dateien

Aus der Excel-Datei unten;

. enter image description here

Zu dieser Word-Datei mit der angegebenen Formatierung.

Jetzt habe ich noch keine Arbeit in diesem Bereich gemacht. Aber ich habe ein paar Ideen, Python mit CSV-Dateiformaten zu verwenden, aber ich bin mir nicht sicher. Was kann ich tun, um eine Software zu schreiben, die diesen Prozess vollständig automatisiert? Nehmen Sie beispielsweise die Excel-Datei als Eingabe und generieren Sie eine formatierte Word-Datei.

enter image description here

Antwort

0

Sie könnten den csv-Modul verwenden, die mit Python kommt. Mit der Funktion csv.reader() können Sie die Zeilen Ihrer csv-Datei durchlaufen. Zusätzlich ist Pandas, ein weiteres Python-Modul (das Sie herunterladen müssen) auch eine gute Option, wenn es um die Arbeit mit Daten geht. Ich bin jedoch ziemlich sicher, dass es nicht automatisch sein wird, und dass Sie mit der Umwandlung in eine Word-Datei umgehen müssen.

0

Sie könnten Excel-Formeln wie = Concatentate verwenden, um die vervollständigten Sätze auf einer separaten Registerkarte namens "Summary" in einem benannten Bereich wie "StudentInfo" zu sammeln. Schließen Sie dann die Tabelle.

In Word, Ihre Fähigkeiten mit dem Cursor an die richtige Stelle zu bekommen, dann ist dies versuchen:

Sub CopyNamedRangeFromExcelWorkbook() 
    ' For this to work, must go to VB Editor and pick --> Tools > References > Miscorsoft Excel 15.0 Obj Lib 
    Dim xlApp As Excel.Application 
    Set xlApp = CreateObject("Excel.Application") 
    xlApp.Visible = False 

    Dim xlWorkbook As Excel.Workbook 
    Set xlWorkbook = _ 
     xlApp.Workbooks.Open("C:\Users\Desdemona\Desktop\TheSpreadsheet.xlsx") 
    xlWorkbook.Worksheets("Summary").Range("StudentInfo").Copy 
    Selection.Paste ' pastes the excel data as a Word table 
    xlWorkbook.Close 
    xlApp.Quit 
    ' now apply a format to the word table, or revert it to text, or whatever. 
End Sub 
0

Eine andere Möglichkeit ist:

  1. Zuerst ordnen Sie die Daten in tabellarischer Form, zB , Name in Spalte A, Geschlecht in Spalte B usw. Sie könnten eine einfache VBA-Routine schreiben, um basierend auf Ihrer RAW-Datei eine Tabellendatei zu erstellen.
  2. Verwenden Sie die Seriendruckfunktion von Word, um die Absätze zu schreiben, indem Sie Datenfelder aus der Excel-Datei ausfüllen.

Hoffe, dass hilft.

Verwandte Themen