Fragen zu Visual Basic für Excel

joopie21

joopie21

Aktives Mitglied
Thread Starter
Dabei seit
02.10.2004
Beiträge
1.411
Reaktionspunkte
35
Nachdem ich mir nun zwei Bücher zum Thema VBAvon Bernd Held gekauft habe, bin ich fleissig dabei das geschriebene umzusetzen.

Zwei Probleme tun sich bisher auf:
-Excel 2004:Mac stürzt gerne mal ab bzw. wird unerwartet beendet.
-der Code aus der Windows-Beschreibung passt nicht so ganz.

Ich denke, es werden sich noch diverse Fragen auftun - darum habe ich mich entschlossen, diese hier 'reinzustellen. In den sonstigen gefundenen VBA-Foren wird auf MacUser leider nur unzureichend eingegangen - und ich bin mir sicher, dass der eine oder andere hier im Forum schon wertvolle Erfahrungen auf dem Gebiet gesammelt hat.

Beginnen möchte ich mit einer "UserForm". Laut Buch kann man diese über Einfügen>UserForm einfügen. Bei mir heisst das dann "Benutzerformular".

Dieses muesste man in der Größe variieren können, indem man mit der linken Maustaste die linke untere Ecke anpackt.

Bei mir passiert da nix. Ist das Mac-Typisch, oder spinnt mein Rechner/Office?
 
Abstürze: Leider normal, achte aber darauf die aktuellst Version von Excel zu verwenden.

Der Code passt nur dann, wenn du exakt die gleiche Version wie im Buc verwendest. Sobald es eine andere Version ist (und das heisst nicht zwangsläufig eine Mac-Version, sondern auch einfach nur 2000 statt Office 2003 ...) gibt es kleine Veränderungen. MS ist da leider nicht sehr konsequent.

UserForm: Wenn du eine deutsche Version von Excel benutzt heisst es natürlich(!) Benutzerformular. Allerdings wirst du im Laufe der Zeit feststellen, dass MS nicht alle Begriffe übersetzt hat ;)

Die Größe kannst du über den EIgenschaften-Dialog ändern. Ob das mit der Maus funktionieren sollte weiss ich nicht. Zumindest bei mir geht es aber auch nicht.
 
Nur so nebenbei:

die nächste Version von Office auf dem Mac wird kein Visual Basic mehr unterstützten.
 
jau - gut, dass es bei dir mit der maus auch nicht geht. über eigenschaften habe ich das ganze schon verändert. Es macht spass, wenn mal was klappt.
Gibt es eine Möglichkeit, herauszufinden, wie ein Befehl in einer anderen Version lautet?

@oglimmer: ich weiss... der automator soll unterstützt werden... aber ich brauche vb und excel - und die neue version kann warten...
 
Hai,
bin ein riesen Excel Fan, vor allem wegen VBA.
Nur leider ist VBA auf dem Mac ein einziger Krampf, der Editor eine Zumutung. Es gibt keine Tipps bzw. autocomplete Funktionen bei der Eingabe, die Hilfe ist lächerlich und nichtssagend.

Das sollte man sich noch nicht einmal freiwilig antun...
Die Grösse der Userform kannst Du leider nicht wie unter Windows einfach durch ziehen ändern, Du musst die Eigenschaften ändern.

Wenn Du einmal mit dem Win Excel Editor gearbeitet hast, willst Du die Mac Version nicht mal mehr unter Androhung von Computerentzug benutzen.
Dies und die Tatsache, dass die nächste Mac Excel Version VBA nicht mehr unterstützt solltest Du Dir gründlich überlegen, bevor Du Dich ins Programmierabenteuer VBA Mac stürzt.

Sorry, was sich die Hersteller dabei denken... keine Ahnung.
VBA wird übrigens auch zukünftig von Win Office unterstützt werden, als "Einsteiger" Programmiersprache. Nur halt bei Mac nicht.
 
joopie21 schrieb:
Gibt es eine Möglichkeit, herauszufinden, wie ein Befehl in einer anderen Version lautet?
Das hast Du falsch aufgefasst. Das bedeutet nicht, dass der Befehl für ein und dieselbe Aktion mal so oder so heisst...

Die neueren Versionen haben mehr Funktionen, die logischerweise bei "älteren" noch nicht drin waren, d.h. ein mit 2004 geschriebenes Modul kann u. U. nicht mit der X Version ausgeführt werden.
 
hey jabba, danke für die offenen worte. dann muss ich wohl mal wieder meine alte windows-version herauskramen. es ist wirklich ein k(r)ampf.

laufen die mit win programmierten excel-tabellen wenigstens ohne probleme auf dem mac? sonst brauche ich garnicht weitermachen...
 
Ob unter Win programmierte VBA Module bei Mac funktionieren?
Da gibts eine klare Antwort: Ausprobieren! :p

Denn leider gibt es etliche Befehle beim Mac nicht, das stellst Du am besten durch Ausprobieren fest. Logischerweise nehmen die Probleme mit dem Umfang der VBA Makros zu...
Bei mir läuft quasi KEIN EINZIGES VBA-Modul bei den grösseren Programmen. Ständig Fehlermeldungen und Abbrüche, ohne "Umbau"aktionen kein Weiterkommen.

"Normale" Tabellen (ohne VBA Code) funktionieren natürlich auch auf dem Mac.

Wie gesagt, schau Dir mal den Editor von 2003 für Win an, der ist sehr komfortabel. Bei den Befehlen werden alle möglichen Kombinationen angezeigt etc. etc...
 
Die Übersetzung zwischen deutschen und englischen Befehlen funktioniert fast automatisch. Wenn du ein VBA-Modul in einer deutschen Excel Version schreibst und dann in einer englischen Excel-Version lädst, kannst du die entsprechenden Befehle ablesen (geht auch umgekehrt).

Prinzipiell muss du aber bei aufwendigeren VBA-Modulen diese immer in alle gewünschten Ziel-Versionen von Office testen. MS hat leider nicht nur stetig neue Befehle hinzugefügt (die dann in älteren Versionen nicht funktionieren und zu einem Abbruch führen) sonder auch besetehende Funktionen schon mal verändert.

Ausserdem ist das arbeiten in einer gemischten Sprachumgebung (mal ein deutsches, mal ein englisches Excel) knifflig, da die automtatische Übersetzung an manchen Stellen versagt. Es bleiben dann einfach die alten Begriffe stehen und führen zu einem Fehler.

Im allgemeinen funktioniert das alles recht gut, aber der Teufel steckt im Detail, und wann genau man dieses Detail benutzt kann man leider nur durch probieren herausfinden.
 
na das sind ja aussichten :) ich suche immer noch die alte office-cd... ich bin mir sicher, ich hatte irgendwo eine echte 2000er win-version...
 
Hallo,

das Thema hatten wir - glaube ich - schon mal und ich möchte die Hinweise von jabba unterstützen: Zwischen den verschiedenen Visual-Basic-Versionen gibt es z.T. erhebliche Unterschiede, auch auf derselben Plattform. Das ist ein Grund, warum viele große Unternehmen noch mit "alten" Office-Versionen arbeiten.

Bei Visual-Basic for Applications (VBA) in Office:mac 2004 und der von Office:Windows 2003 gibt es so große Unterschiede, dass ein Austausch von Programmen ein unkalkulierbares Risiko darstellt. Es funktioniert zumeist nicht. Vor dem Hintergrund, dass MS angekündigt hat, VBA in zukünftigen Office-Versionen für den Mac nicht mehr zu unterstützen gibt es aus meiner Sicht nur zwei Alternativen für neue Projekte: entweder in AppleScript einarbeiten oder auf Windows umsteigen. Alles andere ist verlorene Arbeitszeit.

Gruß
Peter

Ach ja - wenn Du Office für Windows herauskramst dann nimm die aktuelle Version. Gegenüber 2000 hat sich viel getan und mit 2007 wird noch mehr geändert. Sonst fragt man Dich bald, ob Du noch andere Hobbys hast ;-)
 
Das schlimme ist: Ich habe eigentlich echt andere Hobbys! Mal kurz zu Apple Skript: Damit habe ich noch nie was gemacht. Gibt es irgendwo ein gutes deutschsprachiges Tutorial für Einsteiger wie mich?

Und kann ich ich mit AS Excel-Tabellen auswerten?

/edit: gerade gefunden:

http://www.fischer-bayern.de/applescript/html/ebook.html

... aber vielleicht kennt Ihr doch noch was besseres?
 
Excel wird kein VBA mehr unterstützen? Das ist aber ziemlich bescheiden. Oder wird man nur nicht mehr VBA in Excel:Mac programieren können? Ich bekomm nämlich immer mal ne Datei aus der Win-Welt die VBA mit drin hat. Die könnte ich dann ja auch nicht mehr verwenden so wie es gedacht war. :(

@joopie21

Fischer hät ich dir jetzt auch empfohlen. Die Tutorien sind, zumindest für meine Zwecke, ausreichend um nicht zu sagen sehr gut. Aber das ist ja nur meine Meinung ;)
 
habe mittlwerweile entnervt aufgegeben. habe hier zwei markt-und-technik bücher für vb stehen. leider passen die befehle irgendwie nicht ganz zum mac-vb und office stürzt alle nasen lang ab. soooo ein sch...

jetzt programmiert's mir ein kumpel in java...
 
Tja, VBA .....
Für unsere Firma wohl der letzte noch fehlende Grund, definitiv die gesamte MS-Plattform, auf Betriebssystemebene sowie auf softwareebene, zu verlassen.
Unser Ing. wird ein bisschen schwitzen, bis er seine schönen Spielsachen alle in OO neu gebastelt hat, aber was MS da mit diesem Office abliefert, hat mit Professionalität nun wirklich nix zu tun.
 
joopie21 schrieb:
jetzt programmiert's mir ein kumpel in java...

Hallo,

und damit wären wir dort, wo wir am 12.11. schon mal waren. Dieser Thread scheint mir eher von therapeutischer Bedeutung zu sein - sorry.

Ob Java nun die Lösung ist, kommt sehr auf das Problem und das Know-how im Internehmen an. Für große und/oder komplexe Datenbestände bietet sich die Kombination MySQL/Apache/PHP an - alles recht preiswert zu haben und (kompatible) Informationen gibt es ausreichend. Alternativ kann man Excel auch per ODBC an MySQL anbinden…

Peter
 
da ich nur anwender bin kann ich nicht beurteilen, was du da schreibst. ich dachte immer, aber ich weiss, dass ich mich weder mit mysql, apache noch mit php auskenne.

therapeutisch ist das hier wohl eher nicht. ich heule ja nicht nur darüber, das vb sooo scheisse auf dem mac ist, ich habe auch nach wie vor ein handfestes problem.
 
Hallo,

das handfeste Problem (das hast Du wohl an anderer Stelle mal beschrieben) streite ich ja nicht ab - doch dass VBA in office:mac nicht zu aktuellen Versionen von VBA in Office für Windows kompatibel ist und dass VBA in office:mac nicht zu den stabilsten Versionen von VBA gehört, haben jabba und ich hier bereits lang und breit ausgeführt. Deshalb sind Handbücher für Office für Windows nicht oder nur wenig geeignet, sich als Programmier-Anfänger in VBA für office:mac einzuarbeiten. Auch im Hinblick auf zukünftige Versionen ist VBA in office:mac als Problemlösung nicht geeignet (außer für Quick & Dirty - Lösungen).

Doch es gibt ja brauchbare Alternativen: OpenOffice hat eine VBA sehr ähnliche Skript-Sprache und die ist auf den Plattformen auch weitgehend identisch. Visual Basic von RealSoftware ähnelt sehr stark Visual Basic (ohne das "A" für Application). Komplexere Probleme lassen sich mit der von mir genannten Kombination von MySQL, Apache und PHP lösen - natürlich mit größerem Installations-, Lern- und Verwaltungsaufwand. Also nur was für Aufgaben, die den Aufwand lohnen. Natürlich ist auch Java eine gute Alternative - wenn auch die Programmierung der grafischen Benutzeroberfläche (wenn sie denn gewünscht wird) recht aufwändig ist.

Allein: Visual Basic für office:mac ist nicht wirklich brauchbar. Das sollte schon am 12.11. deutlich geworden sein. Schade um die vertane Zeit - doch das war ja nicht meine ;-)

Peter
 
Du hast Recht. Wer nicht lesen will, muss fühlen :)
 
Zurück
Oben Unten