Posts

Es werden Posts vom August, 2012 angezeigt.

VB.NET Exceldatei öffnen - schreiben - als PDF speichern

Frage: Ich arbeite mit VB im Visual Studio und benötige einen Code, der eine bestimmte Exceldatei öffnet, in ein bestimmtes Tabellenblatt etwas reinschreibt und dieses Tabellenblatt als PDF speichert. Wie geht das?

Folgender Code ist NICHT für VBA, sondern für .NET und Excel >= 2007.

Option ExplicitOnOption Infer OnPublicClass Form1 PrivateSub Button1_Click(ByVal sender AsSystem.Object,_ByVal e AsSystem.EventArgs) Handles Button1.Click Dim objExcel AsObject=NothingDim objBook AsObject=NothingDim objSheet AsObject=Nothing Try objExcel =GetObject(,"Excel.Application") Catch ex As Exception Try objExcel =CreateObject("Excel.Application") Catch ex1 As Exception MsgBox("Applikation nicht installiert!",_ MsgBoxStyle.Critical,"Error")End Try End Try 'objExcel.Visible = True ' zu Testzwecken objBook = objE…

Von Wordtabelle eine Zelle nach Excel

Frage: Es sind mehrere Worddateien (ca. 130 Tendenz steigend) in einem Ordner vorhanden. Jede Worddatei ist gleich aufgebaut und beinhaltet eine Tabelle. Ich möchte nun von jeder Worddatei eine bestimmte Zelle dieser Tabellen nach Excel transferieren (untereinander aufgelistet). Problem ist noch, dass in den Zellen sogenannte "Zellenende Markierung" sind - die müssen natürlich weg. Wie geht das?

Zellenende Markierung: http://support.microsoft.com/kb/901125/de
Option ExplicitDim blnTMP AsBooleanPublicSub Test()Dim objDocument AsObjectDim strDatei AsStringDim strPfad AsStringDim objApp AsObjectOnErrorGoTo Fin ' Pfad anpassen strPfad ="C:\Temp\"Set objApp = OffApp("Word")' Word nicht sichtbar'Set objApp = OffApp("Word", False)IfNot objApp Is NothingThen Columns(1).Clear strDatei =Dir$(strPfad &"*.doc*", vbDirectory)DoWhile strDatei <>""Set objDocument = objApp.Documents.Open_(strPfad …

UserForm angeklickte CheckBoxen zählen

Frage: In einer UserForm habe ich viele CheckBoxen. Wie kann ich entweder über den Typ oder über eine Zählvariable alle angeklickten CheckBoxen zählen?

Option ExplicitPrivateSub CommandButton1_Click()Dim objCheckBox AsObjectDim intTMP AsIntegerForEach objCheckBox In Me.Controls IfTypeName(objCheckBox)="CheckBox"ThenIf objCheckBox.Value =TrueThen intTMP = intTMP +1EndIfEndIfNext objCheckBox MsgBox intTMP &" CheckBox(en) angehakt."EndSubOption ExplicitPrivateSub CommandButton2_Click()Dim intCount AsIntegerDim intTMP AsIntegerFor intCount =1To3IfMe.Controls("CheckBox"& intCount).Value =TrueThen intTMP = intTMP +1EndIfNext intCount MsgBox intTMP &" CheckBox(en) angehakt."EndSub

Termine von Excel nach Outlook

Frage: Es sollen Termine von Excel nach Outlook übergeben werden. Das Datum steht in Spalte A ab Zeile 1 und der Betreff (Subject) in Spalte B ab Zeile 1. Ist der Termin schon vorhanden soll nichts passieren. Wie geht das?

Option ExplicitSub Excel_Control_Termin_nach_Outlook()Dim wksSheet As Worksheet Dim objFolder AsObjectDim objOutApp AsObjectDim objTermin AsObjectDim lngRow AsLongOnErrorGoTo Fin Set wksSheet = ThisWorkbook.Worksheets("Tabelle1")' Anpassen!!!Set objOutApp =CreateObject("Outlook.Application")'9 = olFolderCalendarSet objFolder = objOutApp.GetNamespace("MAPI").GetDefaultFolder(9)For lngRow =1To Cells(Rows.Count,1).End(xlUp).Row IfNot fncPointExist(objFolder, wksSheet.Cells(lngRow,2).Value)ThenSet objTermin = objOutApp.CreateItem(1)With objTermin .Start =Format(wksSheet.Cells(lngRow,1).Value _+1,"dd.mm.yyyy")&" 08:00".Subject = wksSheet.Cells(lngRow,2).Value .Bod…

Ordner erstellen - Datei kopieren

Frage: Wenn ich in F5 etwas eingebe, soll unter einem festgelegten Pfad ein Ordner erstellt werden. Der Name des Ordners soll "P" plus der Inhalt von F5 sein. Die Datei soll gleich in diesen Ordner gespeichert werden - Name auch "P" plus der Inhalt von F5. Wie geht das?

Option ExplicitPrivate Declare Function MakeSureDirectoryPathExists _ Lib "imagehlp.dll"(ByVal Pfad AsString)AsLong' Pfad bzw. Laufwerkbuchstabe anpassen!!!Const strPath AsString="C:\Temp\2012\Projecten\P"PrivateSub Worksheet_Change(ByVal Target As Excel.Range)Dim strTMP AsStringOnErrorGoTo Fin If Target.Address ="$F$5"Then Application.EnableEvents =False strTMP = strPath &Right(Target.Value,_(Len(Target.Value))) Target.Offset(1,0).Value =Now() MakeSureDirectoryPathExists (strTMP &"\") ActiveWorkbook.SaveAs Filename:=_ strTMP &"\"&_Mid(strTMP, InStrRev(strTMP,"…

Datei suchen - Tabellenblatt kopieren

Frage: In meiner Datei habe ich auf einem Tabellenblatt einen Button. Wenn ich da drauf klicke, soll folgendes passieren:

1. Eine InputBox fragt nach einem Dateinamen.
2. Diese wird in einem Ordner (inklusive Unterordner) gesucht.
3. Wenn gefunden, dann geöffnet, sonst MsgBox.
4. Aus der Datei mit dem Button soll dann ein bestimmtes Tabellenblatt in die geöffnete Datei ans Ende kopiert werden und den Namen aus der InputBox erhalten.

Wie geht das?

Option ExplicitPrivate Declare Function SearchTreeForFile Lib "imagehlp.dll"_(ByVal RootPath AsString,_ByVal InputPathName AsString,_ByVal OutputPathBuffer AsString)AsLongConst strPath AsString="C:\Temp\"Const strEx AsString=".xlsx"Sub Test_1()Dim strPathName AsString*255Dim wkbBook As Workbook Dim strSearch AsStringDim strName AsStringDim lngCalc AsLongDim lngTMP AsLongOnErrorGoTo Fin strSearch = InputBox("Bitte Nr eingeben:","Datei","123-456")IfTrim(strSearch)=""Th…

Ordner kopieren und umbenennen

Frage: Ich möchte einen bekannten Ordner "ZZZ" mit seinem Inhalt von einem bestimmten Ort "C:\Hallo" an einen anderen bestimmten Ort kopieren z.B. "D:\Hallo".
Dort muss dann der Ordnername von "ZZZ" in "YYY "umbenannt werden.
Im kopierten Ordner befindet sich eine Excel Datei, die dann in "aaa.xls" umbenannt werden soll. Wie geht das?

Option Explicit' Die vier Konstanten anpassen!!!Const strFolderPath AsString="C:\Temp\"Const strFolderQ AsString="Test\"Const strFolderZ AsString="E:\Software\"Const strFolderZNew AsString="Fertig\"PublicSub Main()Dim objFolder AsObjectDim objFSO AsObjectOnErrorGoTo Fin Set objFSO =CreateObject("Scripting.FileSystemObject")Set objFolder = objFSO.Getfolder(strFolderPath & strFolderQ) objFolder.Copy (strFolderZ)' Name TestMappe.xls anpassen!!!Name strFolderZ & strFolderQ &"TestMappe.xls"As_ strFolderZ &a…