Menü
An- und Abmelden
Partner / Links
|
Diese Sektion erlaubt es dir alle Beiträge dieses Mitglieds zu sehen. Beachte, dass du nur solche Beiträge sehen kannst, zu denen du auch Zugriffsrechte hast.
Nachrichten - HansImGlück
Seiten: [1]
1
« am: Oktober 02, 2012, 14:16:29 Nachmittag »
Hallo liebes Forum,
ich möchte mit VBA Bookmarks erstellen jedoch war ich bis jetzt nicht in der Lage herauszufinden wie man solche erstellt. Alle Artikel die ich zu diesem Thema gelesen habe bezogen sich darauf bereits vorhandene Bookmarks zu benutzen, aber nicht wie man diese erstellt. Ebenso ist mir unersichtlich ob man zuerst ein Range erstellen muss oder die Punkt-Textmarken auch ohne dieses Range einfügen kann. Falls jemand helfen kann wäre ich sehr dankbar darüber.
Gruß HansImGlück
2
« am: Oktober 02, 2012, 10:14:49 Vormittag »
Hallo maninweb,
ich freue mich dir mitteilen zu können das meine penetrante Fragerei ein Ende hat. Es funktioniert alles bestens. Alle deine Beiträge haben geholfen, das Problem erfolgreich zu beheben. Folgende Faktoren waren die Ursache für das "Nichtgelingen".
1. Die create-Methode, die du durch den New Konstruktor ersetzt hast. 2. Die boolsche-Variable, die du eingefügt hast um alles richtig zu speichern und zu schließen. 3. Die Ergänzung zur WorksheetFunction.
Vielen herzlichen Dank, für deine ausdauernde, schnelle und professionelle Hilfe.
Mit freundlichen Grüßen
HansImGlück
3
« am: Oktober 01, 2012, 16:54:15 Nachmittag »
Hallo maninweb, habe Deinen Rat befolgt und das CreateObject raus genommen und nur Set objExcelWorkbook = objExcel.Workbooks.Open(strExcelFullName)
benutz. Daraufhin habe ich eine Fehlermeldung erhalten (Siehe Bild). Spielt es eine Rolle ob ich Set objExcel = New Excel.Application
oder Set objExcel = CreateObject("Excel.Application")
benutze? Dies scheint aber nicht der Fehler zu sein, denn wie schon erwähnt tritt das Problem nur auf wenn ich folgende Code-Zeilen aktiviert habe Dim emptyRow As Long Set objExcelSheet = ExcelWorkbook.Worksheets(1) emptyRow = WorksheetFunction.CountA(Range("A:A")) + 1 '<-------Diese Zeile scheint der Übeltäter zu sein
Beende ich das Excel-File Manuel in Task-Manager, erscheint die Fehlermeldung Laufzeitfehler '462': (Siehe: Fehler2.png) Gruß HansImGlück
4
« am: Oktober 01, 2012, 15:50:58 Nachmittag »
Hab gerade die Fehlerquelle identifiziert. Benutze noch eine VBA-Schweinerei Dim emptyRow As Long Set objExcelSheet = ExcelWorkbook.Worksheets(1) emptyRow = WorksheetFunction.CountA(Range("A:A")) + 1
blende ich die zwei Zeilen aus kann ich das Excel-File schließen. Hat jemand eine Idee wieso es wegen diesen zwei Zeilen nicht klappt? Gruß HansImGlück
5
« am: Oktober 01, 2012, 14:47:05 Nachmittag »
Hallo maninweb, Dank dir für Die zügige Antwort. Die Object Librarys sind alle aktiviert, daran hat es nicht gelegen. Hab den von dir geschriebenen Code mal an meinen Versuch angepasst, bzw. dein Vorschlag ausprobiert, dies ist jedoch leider vollkommen in die Hose gegangen. Ein Laufzeitfehler war die Folge. Ich habe deinen Code mal an meinen Versuch angepasst, um evtl. mein Anliegen etwas zu verdeutlichen. Public Sub TestMitVerweis_Click() Dim objExcel As Excel.Application Dim objExcelWorkbook As Excel.Workbook Dim objExcelSheet aS Excel.Worksheet Dim strExcelFullName As String Dim strExcelFile As String Dim strExcelPath As String strExcelPath = "E:\Temp" strExcelFile = "Test.xls" strExcelFullName = strExcelPath + "\" + strExcelFile 'neues Excel-Objekt erstellen Set objExcel = CreateObject("Excel.Application") 'prüfen ob File existiert If Fileexists(strExcelFullName) = True Then 'Instanz auf bestehendes Dokument referenzieren Set objExcelWorkbook = objExcel.workbooks.Open(strExcelFullName) Else 'neues workbook hinzufügen Set objExcelWorkbook = objExcel.workbooks.add End If 'erste Seite im Workbook aufrufen Set objExcelSheet = objExcelWorkbook.Worksheet() 'Aufräumen... 'objExcelWorkbook.Save 'objExcelWorkbook.Close '--------> Funktioniert nicht objExcelWorkbook.Close (True) '----------> Funktioniert Set objExcelSheet = Nothing Set objExcelWorkbook = Nothing 'Schliessen... objExcel.Quit 'Aufräumen... Set objExcel = Nothing End Sub
p.S. Wie macht man den Code bunt? Gruß HansImGlück
6
« am: Oktober 01, 2012, 12:36:57 Nachmittag »
Hallo Officer,
auch dir erstmals ein Dank, für die Bemühung mir zu helfen. Anscheinend habe ich einen essentiellen Teil unterschlagen. Der VBA-Code befindet sich in einem Word-Dokument, ich glaube dies ist der Grund warum ich keine Workbooks aufrufen kann, klar Word besitzt sowas nicht. Nun versuche ich das Problem etwas detaillierter zu schildern. Ich habe eine User-Form erstellt, in welche man verschiedene Dinge eintragen kann. Das Makro soll die Informationen aus der User-Form in ein Excel-File schreiben, tut es auch genau 1 mal. Wenn ich den Button erneut drücke wird eine neue Instanz eines Excel-File erstellt. Irgendetwas referenziert jedoch auf die zuvor erstellte Instanz und es knallt. Daher meinte ich ja das es zwingend notwendig ist die Instanz komplett zu schließen.
Gruß
HansImGlück
7
« am: Oktober 01, 2012, 08:43:55 Vormittag »
Hallo maninweb, vorab herzlichen Dank für deine Antwort. Die Methode .Workbooks existiert leider nicht. Mit .w beginnend habe ich lediglich Application -> 1.Width 2.Windows 3.WindowState 4.WordBasic Gruß HansInGlück
8
« am: September 28, 2012, 13:33:49 Nachmittag »
Liebes Forum, ich habe das Problem dass ich mein erzeugtes Excel-File nicht komplett schließen kann. Ich habe schon vieles ausprobiert und langsam weiß ich echt nicht mehr weiter. Ich habe bereits versucht: 1. ActiveWorkbook.Save ActiveWorkbook.Close 2. Set ExcelSheet = Nothing Set ExcelWorkbook = Nothing ExcelApp.Quit Set ExcelApp = Nothing 3. ExcelWorkbook.Close (True)
alles zusammen, getrennt und auch alle möglichen Variationen. Ich finde das Excel-File immer noch über meinen Task-Manager. Lustig ist sobald ich das Makro beende schließt sich auch das Excel-File. Ich brauche glaub ich nicht zu erwähnen das es zwingend notwendig ist das Excel-File während des Betriebes zu beenden. Falls jemand eine Idee hat woran es liegen kann, dass ich das Excel-File nicht komplett schließen kann, wäre ich sehr dankbar für mögliche Lösungsvorschläge. Schon-Mal vorab Danke für Eure Hilfe.
Seiten: [1]
|