Posts

Es werden Posts vom Mai, 2011 angezeigt.

Worddateien - Tabelle nach Excel kopieren!

Frage: Aus vielen Worddokumenten soll eine Tabelle in Excel kopiert werden - jeweils auf ein neues Tabellenblatt. Es kann auch der gesamte Inhalt des Worddokumentes kopiert werden. Bitte den Pfad im Code anpassen.

Worddateien - Tabelle nach Excel kopieren...[ZIP, 90 KB]

Option Explicit
Dim blnTMP AsBoolean
PublicSub Test()
Dim objDocument AsObject
Dim strDatei AsString
Dim strPfad AsString
Dim objApp AsObject
OnErrorGoTo Fin
' Pfad anpassen
strPfad ="C:\TMP\"
Set objApp = OffApp("Word")
' Word nicht sichtbar
'Set objApp = OffApp("Word", False)
IfNot objApp Is NothingThen
strDatei =Dir$(strPfad &"*.doc*", vbDirectory)
DoWhile strDatei <>""
Set objDocument = objApp.Documents.Open_
(strPfad & strDatei)
' Die erste Tabelle wird kopiert
objDocument.Tables(1).Range.Copy
' Der gesamte Inhalt wird kopiert
'objDocument.Range.Copy
' und in ein neues Tabellenbatt eingefügt
Worksheets.Add After:…

Protokoll - Datum - Tabellen!

Um zu sehen, ob ein Tabellenblatt aktuell ist sollen bei Änderungen in ein extra Tabellenblatt das Datum und die Uhrzeit protokolliert werden. Das Tabellenblatt heisst in meinem Beispiel "Protokoll" und ist ausgeblendet. Für jedes andere Tabellenblatt habe ich auf dem Sheet "Protokoll" einen Namen angelegt mit dem CodeNamen des jeweiligen Tabellenblattes. Protokolliert wird Tabellenblattname, CodeName des Tabellenblattes, Datum und Uhrzeit und der Username. Protokolliert wird auch, wenn alle Tabellenblätter markiert sind um Eingaben auf allen zu machen.

Protokoll - Datum - Tabellen...[ZIP, 60 KB]

' Folgender Code in "DieseArbeitsmappe":
Option Explicit
PrivateSub Workbook_SheetChange(ByVal Sh AsObject,ByVal Target As Range)
OnErrorGoTo Fin
With Application
.ScreenUpdating =False
.EnableEvents =False
EndWith
If Sh.CodeName <>"Tabelle4"Then
With Tabelle4
.Unprotect
.Range(Sh.CodeName).Value = Sh.CodeName
.Range(Sh.CodeName).Offset(,1).Value = Sh.Name
.…

Datei suchen - Pfad unbekannt - auslesen - kopieren!

Frage: Wie kann man eine Datei suchen, die irgendwo auf dem PC ist? Der Pfad ist nicht bekannt. Hier bietet sich die API-Funktion "SearchTreeForFile" an. Im folgenden Beispiel wird die Datei "Testdatei.xls" auf Laufwerk "C:\" gesucht. Wird sie gefunden können über die zwei folgenden Codes entweder zwei Zellen hineinkopiert bzw. zwei Zellen herausgelesen werden.

Datei suchen - Pfad unbekannt - auslesen - kopieren...[ZIP, 60 KB]

' Code für auslesen - kommt in Modul1
Option Explicit
Private Declare Function SearchTreeForFile Lib "imagehlp.dll"_
(ByVal RootPath AsString,_
ByVal InputPathName AsString,_
ByVal OutputPathBuffer AsString)AsLong
' Anpassungen eventuell vornehmen!!!
Const strFile AsString="Testdatei.xls"
Const strSheetQ AsString="Tabelle1"
Const strCell1 AsString="E1"
Const strCell2 AsString="E2"
Sub Test()
Dim strPathName AsString*255
Dim strName AsString
Dim lngTMP AsLong
OnErrorGoTo Fin
lngTMP = Search…