Excelzelle wird ausgelesen und in eine
Textmarke in Word eingefügt.
' Demonstration einer Excel + Word Kombination in VB.net
' Hierzu wird eine Excelzelle ausgelesen und an eine Textmarke in Word weitergegeben.
' (C) Heiko Franke Dipl. Wirtschaftsinformatiker / FH
' h.franke@wirtschaftssoft.de
Imports System.Runtime.InteropServices
Imports Microsoft.Office.Interop.Word
Imports System.IO
Public Class Form1
Dim strFileName As String
Dim txt As String
Private Function word_doc(ByVal textmarke As String, ByVal textm_value As String)
Dim word As New Microsoft.Office.Interop.Word.Application
Dim doc As Microsoft.Office.Interop.Word.Document
Try
'word.Visible = (True) 'Word sehen zum Test?
doc = word.Documents.Open("c:\\schreiben.dot")
doc.Activate()
If doc.Range.Bookmarks.Exists(textmarke) Then
doc.Bookmarks().Item(textmarke).Range.Text = textm_value
Else
MessageBox.Show("Textmarke nicht vorhanden!")
End If
doc.SaveAs("c:\\test.doc")
doc.Close()
MessageBox.Show("Datei erstellt")
Catch ex As IOException
MessageBox.Show("Datei am deklarierten Ort nicht vorhanden.")
Finally
word.Application.Quit()
End Try
Return (0)
End Function
Function excel(ByVal row As String)
Dim Excel1 As New Microsoft.Office.Interop.Excel.Application
Try
Excel1.Workbooks.Open("C:\datei.xls")
'Excel1.Visible = True ' zum testen ganz hilfreich!
txt = Excel1.Range(row).Value()
' MessageBox.Show(txt)
Catch ex As IOException
MessageBox.Show("Datei am deklarierten Ort nicht vorhanden.")
Finally
Excel1.Application.Quit()
End Try
Return (0)
End Function
Public Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
' Funktionsaufrufe
excel("A2") ' excel (Zelle)
word_doc("Kundenname", txt) ' dok( Textmarke, Inhalt)
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
End Sub
End Class
3 Kommentare zum Snippet