Laie braucht Hilfe
-
- Beiträge: 83
- Registriert: 06.12.2014 09:14:51
Laie braucht Hilfe
Eine Passage im BasicMaker Beispielprogramm "Kalender" lautet:
'------------------------
' Kalender aufbereiten
'------------------------
' PlanMaker starten
Set pm = CreateObject("PlanMaker.Application")
' Erstelle neues Dokument
pm.Visible = True
pm.Activate
pm.Workbooks.Add
Kann mir ein freundlicher BM-Kenner hinzufügen, wie ich
- der Datei den Namen "MusterKalender.xlsx" und
- dem Arbeitsblatt den Namen "Jahrgang"
geben kann?
Vielen Dank vorab!
'------------------------
' Kalender aufbereiten
'------------------------
' PlanMaker starten
Set pm = CreateObject("PlanMaker.Application")
' Erstelle neues Dokument
pm.Visible = True
pm.Activate
pm.Workbooks.Add
Kann mir ein freundlicher BM-Kenner hinzufügen, wie ich
- der Datei den Namen "MusterKalender.xlsx" und
- dem Arbeitsblatt den Namen "Jahrgang"
geben kann?
Vielen Dank vorab!
Re: Laie braucht Hilfe
Nix Kenner hier, und leider ist der Bug bzgl. "Type mismatch" in BM Stand heute immer noch drin.rollovanoyten hat geschrieben: ↑10.05.2019 11:19:28 Eine Passage im BasicMaker Beispielprogramm "Kalender" lautet:
'------------------------
' Kalender aufbereiten
'------------------------
' PlanMaker starten
Set pm = CreateObject("PlanMaker.Application")
' Erstelle neues Dokument
pm.Visible = True
pm.Activate
pm.Workbooks.Add
Kann mir ein freundlicher BM-Kenner hinzufügen, wie ich
- der Datei den Namen "MusterKalender.xlsx" und
- dem Arbeitsblatt den Namen "Jahrgang"
geben kann?
Vielen Dank vorab!
Deshalb mit 2016er gespielt...
Was geht ist:
Dim myDoc As Workbook
set myDoc = pm.Workbooks.Add
myDoc.SaveAs("D:\Test.pmd")
Was mMn gehen sollte ist:
set myDoc.Sheet.Name = "Rollo"
oder auch
set pm.ActiveSheet.Name = "Rollo"
Beides mag nicht, ich verstehe aber nicht, warum, sorry -> "Automation object does not have a default value"
MsgBox pm.ActiveSheet.Name
funktioniert...
Mit freundlichem Gruß
Karl
SM 2018 rev. 982/0109/64, klassisches Menu @ W8.1/64 /Deutsch/Deutsch // emC 7
SM 2024NX Nightly, klassisches Menu
16GB Ram; Core i5-3450 mit integriertem Intel HDGraphics 4000, Treiber 10.18.10.4276; Samsung SSD 840pro
2560x1440 Monitor 100% Darstellungsgröße /// LaserJet 1200 per USB via Fritzbox 6591.
Empfehlung für supereinfache Bildschirmvideos: https://www.screentogif.com/
Karl
SM 2018 rev. 982/0109/64, klassisches Menu @ W8.1/64 /Deutsch/Deutsch // emC 7
SM 2024NX Nightly, klassisches Menu
16GB Ram; Core i5-3450 mit integriertem Intel HDGraphics 4000, Treiber 10.18.10.4276; Samsung SSD 840pro
2560x1440 Monitor 100% Darstellungsgröße /// LaserJet 1200 per USB via Fritzbox 6591.
Empfehlung für supereinfache Bildschirmvideos: https://www.screentogif.com/
-
- Beiträge: 83
- Registriert: 06.12.2014 09:14:51
Re: Laie braucht Hilfe
Hallo FFF,
danke für die Hilfe.
Den Dateinamen habe ich hinbekommen, den Blattnamen nicht.
Aber auf den kann ich zur Not verzichten.
rollovanoyten
danke für die Hilfe.
Den Dateinamen habe ich hinbekommen, den Blattnamen nicht.
Aber auf den kann ich zur Not verzichten.
rollovanoyten
Re: Laie braucht Hilfe
Gut, 50% sind ja schon was . Aber wg. des Blattnamens: Entweder ist da noch ein Bug drin, was mich nicht wundern würde, nachdem die aktuelle 64bit Version noch genug klemmt, oder wir machen was falsch, dann bin ich zuversichtlich, daß uns einer der Gurus weiterhilft...rollovanoyten hat geschrieben: ↑11.05.2019 18:12:48 Den Dateinamen habe ich hinbekommen, den Blattnamen nicht.
NB, ich nehme an, Du bist mit der 32bit Version unterwegs?
Mit freundlichem Gruß
Karl
SM 2018 rev. 982/0109/64, klassisches Menu @ W8.1/64 /Deutsch/Deutsch // emC 7
SM 2024NX Nightly, klassisches Menu
16GB Ram; Core i5-3450 mit integriertem Intel HDGraphics 4000, Treiber 10.18.10.4276; Samsung SSD 840pro
2560x1440 Monitor 100% Darstellungsgröße /// LaserJet 1200 per USB via Fritzbox 6591.
Empfehlung für supereinfache Bildschirmvideos: https://www.screentogif.com/
Karl
SM 2018 rev. 982/0109/64, klassisches Menu @ W8.1/64 /Deutsch/Deutsch // emC 7
SM 2024NX Nightly, klassisches Menu
16GB Ram; Core i5-3450 mit integriertem Intel HDGraphics 4000, Treiber 10.18.10.4276; Samsung SSD 840pro
2560x1440 Monitor 100% Darstellungsgröße /// LaserJet 1200 per USB via Fritzbox 6591.
Empfehlung für supereinfache Bildschirmvideos: https://www.screentogif.com/
-
- Beiträge: 83
- Registriert: 06.12.2014 09:14:51
Re: Laie braucht Hilfe
Ich arbeite mit der 64-bit-Version, habe mir aber von einer 32-bit-Installation die BasicMaker Dateien kopiert.
Das läuft ohne Probleme.
Das läuft ohne Probleme.
Re: Laie braucht Hilfe
Bei mir gibt es unter c:\....\Softmaker\Beispiele bzw. \Samples die Dateien "kalender.bas".
Die Dateien finden sich - je nach Installation von Basicmaker - möglicherweise auch an anderen Stellen.
(da ich Softmaker nicht am Standard-Pfad installiert habe, können die Fundorte auch wo anders sein)
Damit lassen sich verschiedene Kalender-Arten erstellen.
Das auf die eigenen Bedürfnisse anzupassen ist nicht besonders schwierig.
Einfach mal den Rechner nach kalender.bas durchsuchen...
Vielleicht eine Möglichkeit.....
Die Dateien finden sich - je nach Installation von Basicmaker - möglicherweise auch an anderen Stellen.
(da ich Softmaker nicht am Standard-Pfad installiert habe, können die Fundorte auch wo anders sein)
Damit lassen sich verschiedene Kalender-Arten erstellen.
Das auf die eigenen Bedürfnisse anzupassen ist nicht besonders schwierig.
Einfach mal den Rechner nach kalender.bas durchsuchen...
Vielleicht eine Möglichkeit.....
-
- Beiträge: 83
- Registriert: 06.12.2014 09:14:51
Re: Laie braucht Hilfe
Dank für den Hinweis.
Ich arbeite doch gerade an KALENDER.bas und möchte es nur ein bisschen
an meine Aufgabenstellung anpassen.
Aus der Beschreibung im Handbuch kann ich leider nicht erkennen, was ich tun muss,
um auch das Arbeitsblatt nach meinen Wünschen zu benennen.
Ich arbeite doch gerade an KALENDER.bas und möchte es nur ein bisschen
an meine Aufgabenstellung anpassen.
Aus der Beschreibung im Handbuch kann ich leider nicht erkennen, was ich tun muss,
um auch das Arbeitsblatt nach meinen Wünschen zu benennen.
Re: Laie braucht Hilfe
Siehe mein Post oben.weisi14 hat geschrieben: ↑11.05.2019 21:12:30 Bei mir gibt es unter c:\....\Softmaker\Beispiele bzw. \Samples die Dateien "kalender.bas".
Die Dateien finden sich - je nach Installation von Basicmaker - möglicherweise auch an anderen Stellen.
(da ich Softmaker nicht am Standard-Pfad installiert habe, können die Fundorte auch wo anders sein)
Damit lassen sich verschiedene Kalender-Arten erstellen.
Das auf die eigenen Bedürfnisse anzupassen ist nicht besonders schwierig.
Einfach mal den Rechner nach kalender.bas durchsuchen...
Vielleicht eine Möglichkeit.....
Kannst Du in der Kalender.bas z.B. den Tabellennamen setzen?
Mit freundlichem Gruß
Karl
SM 2018 rev. 982/0109/64, klassisches Menu @ W8.1/64 /Deutsch/Deutsch // emC 7
SM 2024NX Nightly, klassisches Menu
16GB Ram; Core i5-3450 mit integriertem Intel HDGraphics 4000, Treiber 10.18.10.4276; Samsung SSD 840pro
2560x1440 Monitor 100% Darstellungsgröße /// LaserJet 1200 per USB via Fritzbox 6591.
Empfehlung für supereinfache Bildschirmvideos: https://www.screentogif.com/
Karl
SM 2018 rev. 982/0109/64, klassisches Menu @ W8.1/64 /Deutsch/Deutsch // emC 7
SM 2024NX Nightly, klassisches Menu
16GB Ram; Core i5-3450 mit integriertem Intel HDGraphics 4000, Treiber 10.18.10.4276; Samsung SSD 840pro
2560x1440 Monitor 100% Darstellungsgröße /// LaserJet 1200 per USB via Fritzbox 6591.
Empfehlung für supereinfache Bildschirmvideos: https://www.screentogif.com/
-
- Beiträge: 83
- Registriert: 06.12.2014 09:14:51
Re: Laie braucht Hilfe
BasicMaker hat (neben vielen anderen) dieses Problem:
Einerseits soll es eine einfache Script-Sprache sein für die Arbeit mit Plan- und TextMaker.
Andererseits ist der Lernaufwand - gemessen am Nutzen - außergewöhnlich hoch.
Wenn man das nur ein- oder zweimal nutzen möchte, lohnt sich der Aufwand nicht.
Ich will mich darum nicht weiter damit befassen.
Dank an alle, die mir helfen wollten.
Einerseits soll es eine einfache Script-Sprache sein für die Arbeit mit Plan- und TextMaker.
Andererseits ist der Lernaufwand - gemessen am Nutzen - außergewöhnlich hoch.
Wenn man das nur ein- oder zweimal nutzen möchte, lohnt sich der Aufwand nicht.
Ich will mich darum nicht weiter damit befassen.
Dank an alle, die mir helfen wollten.
Re: Laie braucht Hilfe
basicmaker.bas öffnen - die gewünschten Anpassungen vornehmen - > "Datei speichern unter..." - und den gewünschten Namen angeben - fertig.
Anschliessend in Basicmaker diese Datei dann ausführen. Steht im Menü unter "Programm" oder Taste F9 drücken
Es wird eine Planmaker-Datei aufgebaut, Planmaker wird gestartet, die erstellte Datei wird angezeigt und dann ganz einfach in Planmaker mit "Datei speichern unter..." dem gewünschten Namen speichern.
So wie auch bei jeder anderen Planmaker-Datei....
Fertig.....
Nichts für ungut, aber: so wie jede andere Script- oder Programmier-Sprache erfordert auch Basimaker eine Beschäftigung damit, von alleine geht da leider garnichts....
Nachtrag:
Falls das nicht klar geworden ist: die so entstandene Planmaker-Datei lässt sich wo wie jede andere Planmaker-Datei bearbeiten, Zellinhalte ändern, Text ändern, etc.....
Anschliessend in Basicmaker diese Datei dann ausführen. Steht im Menü unter "Programm" oder Taste F9 drücken
Es wird eine Planmaker-Datei aufgebaut, Planmaker wird gestartet, die erstellte Datei wird angezeigt und dann ganz einfach in Planmaker mit "Datei speichern unter..." dem gewünschten Namen speichern.
So wie auch bei jeder anderen Planmaker-Datei....
Fertig.....
Nichts für ungut, aber: so wie jede andere Script- oder Programmier-Sprache erfordert auch Basimaker eine Beschäftigung damit, von alleine geht da leider garnichts....
Nachtrag:
Falls das nicht klar geworden ist: die so entstandene Planmaker-Datei lässt sich wo wie jede andere Planmaker-Datei bearbeiten, Zellinhalte ändern, Text ändern, etc.....
Re: Laie braucht Hilfe
Nix für ungut, aber zu lesen, was Rollo wollte, tät auch nicht schaden.weisi14 hat geschrieben: ↑12.05.2019 11:32:09 basicmaker.bas öffnen - die gewünschten Anpassungen vornehmen - > "Datei speichern unter..." - und den gewünschten Namen angeben - fertig.
Anschliessend in Basicmaker diese Datei dann ausführen. Steht im Menü unter "Programm" oder Taste F9 drücken
Es wird eine Planmaker-Datei aufgebaut, Planmaker wird gestartet, die erstellte Datei wird angezeigt und dann ganz einfach in Planmaker mit "Datei speichern unter..." dem gewünschten Namen speichern.
So wie auch bei jeder anderen Planmaker-Datei....
Fertig.....
Nichts für ungut, aber: so wie jede andere Script- oder Programmier-Sprache erfordert auch Basimaker eine Beschäftigung damit, von alleine geht da leider garnichts....
NICHT IN PM den Dateinamen vergeben. NICHT IN PM das Tabellenblatt benamsen. Nach der Hilfe ist das problemlos möglich, für den Dateinamen funktioniert es auch mit etwa:
Dim myDoc As Workbook
set myDoc = pm.Workbooks.Add
myDoc.SaveAs("D:\Test.pmd")
Aber es funktioniert nicht, die Tabelle vorher zu benennen:
set pm.ActiveSheet.Name = "Rollo"
liefert:
"Automation object does not have a default value"
Dim myDoc As Workbook
set myDoc = pm.Workbooks.Add
set myDoc.ActiveSheet.Name = "Rollo"
liefert:
"Object doesn't support this property or method"
Ebenso, wie
set myDoc.Sheet(1).Name = "Rollo"
Wohlbemerkt, in BM2016, weil die 18/64er Version nach wie vor nicht läuft ( der "Type mismatch" Bug)
So. Jetzt Du!
Mit freundlichem Gruß
Karl
SM 2018 rev. 982/0109/64, klassisches Menu @ W8.1/64 /Deutsch/Deutsch // emC 7
SM 2024NX Nightly, klassisches Menu
16GB Ram; Core i5-3450 mit integriertem Intel HDGraphics 4000, Treiber 10.18.10.4276; Samsung SSD 840pro
2560x1440 Monitor 100% Darstellungsgröße /// LaserJet 1200 per USB via Fritzbox 6591.
Empfehlung für supereinfache Bildschirmvideos: https://www.screentogif.com/
Karl
SM 2018 rev. 982/0109/64, klassisches Menu @ W8.1/64 /Deutsch/Deutsch // emC 7
SM 2024NX Nightly, klassisches Menu
16GB Ram; Core i5-3450 mit integriertem Intel HDGraphics 4000, Treiber 10.18.10.4276; Samsung SSD 840pro
2560x1440 Monitor 100% Darstellungsgröße /// LaserJet 1200 per USB via Fritzbox 6591.
Empfehlung für supereinfache Bildschirmvideos: https://www.screentogif.com/
Re: Laie braucht Hilfe
Bitte mal nachlesen, was "Set" genau tut:
Der Befehl set myDoc.ActiveSheet.Name = "Rollo" ist falsch, weil das "Set" da nicht hingehört. Richtig ist eine simple Zuweisung:
Code: Alles auswählen
Set Object = [New] ObjectExpression
Beziehungsweise:
Set Object = Nothing
Die obere Schreibweise verknüpft eine Objektvariable mit einem OLE-Objekt; die untere löst die Verknüpfung auf.
Code: Alles auswählen
myDoc.ActiveSheet.Name = "Rollo"
Martin Kotulla
SoftMaker Software GmbH
SoftMaker Software GmbH
Re: Laie braucht Hilfe
Habe ich gelesen, aber er schreibt auch noch:
Dieser Aufwand alles nur für eine einmalige Verwendung wäre doch etwas übertrieben, oder?rollovanoyten hat geschrieben: ↑12.05.2019 09:38:43 Wenn man das nur ein- oder zweimal nutzen möchte, lohnt sich der Aufwand nicht.
Ich will mich darum nicht weiter damit befassen.
Mein Vorschlag geht daher davon aus.Und da ist es wohl einfacher, diese Datei auch nur einmalig zu speichern...
-
- Beiträge: 83
- Registriert: 06.12.2014 09:14:51
Re: Laie braucht Hilfe
Es ist ja schade um den schönen Sonntag, aber ich wollte es einfach wissen.
Für die, die es interessiert, habe ich eine Musterlösung begefügt.
Die mag ja nicht perfekt sein, aber sie tut das, was ich will.
Für die, die es interessiert, habe ich eine Musterlösung begefügt.
Die mag ja nicht perfekt sein, aber sie tut das, was ich will.
- Dateianhänge
-
- Add SheetName.bas
- (979 Bytes) 216-mal heruntergeladen
Re: Laie braucht Hilfe
Vielen Dank, das war's - wenn auch die Fehlermeldung klarer sein könntemartin-k hat geschrieben: ↑12.05.2019 12:12:30 Bitte mal nachlesen, was "Set" genau tut:Der Befehl set myDoc.ActiveSheet.Name = "Rollo" ist falsch, weil das "Set" da nicht hingehört. Richtig ist eine simple Zuweisung:Code: Alles auswählen
Set Object = [New] ObjectExpression Beziehungsweise: Set Object = Nothing Die obere Schreibweise verknüpft eine Objektvariable mit einem OLE-Objekt; die untere löst die Verknüpfung auf.
Code: Alles auswählen
myDoc.ActiveSheet.Name = "Rollo"
Kommt davon, wenn man helfen will, ohne "eigentlich" zu wissen, was zu tun ist. Wieder was gelernt.
Also, für Rollo:
Kalender ergänzen
Dim myDoc as Workbook
Dann nach " 'Erstelle neues Dokument "
pm.Visible = True
pm.Activate
set myDoc= pm.Workbooks.Add
pm.ActiveSheet.Name = "Rollo"
und vor der Zeile: "' Ostersonntag bestimmen"
myDoc.Saveas("D:\Test.pmd")
set myDoc = Nothing
einfügen,
Damit ist das Blatt und die Datei benannt. Und einerseits die neue Datei ohne Rückfrage gespeichert, andererseits die Referenz zum OLE Object Planmaker wieder aufgelöst.
Mit freundlichem Gruß
Karl
SM 2018 rev. 982/0109/64, klassisches Menu @ W8.1/64 /Deutsch/Deutsch // emC 7
SM 2024NX Nightly, klassisches Menu
16GB Ram; Core i5-3450 mit integriertem Intel HDGraphics 4000, Treiber 10.18.10.4276; Samsung SSD 840pro
2560x1440 Monitor 100% Darstellungsgröße /// LaserJet 1200 per USB via Fritzbox 6591.
Empfehlung für supereinfache Bildschirmvideos: https://www.screentogif.com/
Karl
SM 2018 rev. 982/0109/64, klassisches Menu @ W8.1/64 /Deutsch/Deutsch // emC 7
SM 2024NX Nightly, klassisches Menu
16GB Ram; Core i5-3450 mit integriertem Intel HDGraphics 4000, Treiber 10.18.10.4276; Samsung SSD 840pro
2560x1440 Monitor 100% Darstellungsgröße /// LaserJet 1200 per USB via Fritzbox 6591.
Empfehlung für supereinfache Bildschirmvideos: https://www.screentogif.com/