Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
192to196
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
192to196
192to196
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Dim

Dim
17.12.2002 08:46:31
Frank
Hallo Leute,
ich habe da mal ne ganz grundsätzliche Frage: Immer wenn hier im Forum oder in Büchern was über VBA steht, werden alle Variablen per DIM definiert. Ich mache das in meinen Makros nicht (ich bin halt faul) und es geht trotzdem. Was ist der Vorteil, was der Nachteil?

Und noch eine: Ich mache ja nicht wenig in VBA habe aber trotzdem das Gefühl ich programmiere Kinderkram wenn ich so manches im Forum betrachte. Wo und wie lernt man sowas? Ich praktiziere lerning by doing (und lese Bücher), es funktioniert auch meistens aber es ist halt nicht "professionell". Wer kann mir von guten Erfahrungen bezüglich VBA-Kursen z.B. in der VHS oder anderen Institutionen (Raum Frankfurt) berichten?

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
  • 17.12.2002 08:53:29
    Hubert Z.
  • 17.12.2002 08:54:52
    Georg_zi
  • 17.12.2002 08:56:58
    Michael Scheffler
  • 17.12.2002 08:58:05
    Michael Scheffler
Anzeige
Re: Dim
17.12.2002 08:53:29
Hubert Z.
Hallo Frank,

Zu dim: Es gibt einige "Dinge", die muss man nicht deklarieren. das ist auch das schöne an VBA. In deinem Fall (könnte es sein), dass diese Variable automatisch "gedimmt" wird. Offensichtlicher wird das in einem Modul in dem man einfach schreibt

public sub test()
dim x
end sub

x ist hier nicht deklariert, kann also alle Werte annehmen (long, integer, string, etc). Mit einem Satz: VBA ist sehr tolerant und wer andere Programmiersprachen kennt (C++, Pascal) weiß das zu schätzen.

Was die Literatur angeht, gibt's hier in der Recherche schon alle Tipps, die ich nicht abtippen möchte. Ansonsten einfach in google.de die Suchbegriffe "Excel VBA Tutorial" oder so eingeben und in den Ergebnissen die Universitätsseiten durchforsten. ansonsten machst du alles richtig: Learning by doing!

Anzeige
Re: Dim
17.12.2002 08:54:52
Georg_zi
Hallo Frank

die meisten (vermute ich jedenfalls) haben in VBA eingestell Variablen Deklaration notwendig. Dadurch kommt die Zeile Option Explicit. Das hat den Vorteil das bei schreibfehler das Programm nicht läuft zb Iwert ist nicht das gleiche wie lwert.

Ein andere Punkt ist der Speicher. Werden Variablen nicht definiert wird als Typ Variant angenommen was den meisten Platz braucht.

Gruß Georg

Re: Dim
17.12.2002 08:56:58
Michael Scheffler
Hallo,

also, wenn Du die richtigen Bücher liest, wirst Du wohl auch den Vorteil von Dim entdecken.

Wenn Du nicht dimensionierst, wird von VBA alles als Variant betrachtet mit entsprechenden Auswirkungen (mehr Speicherbedarf und mehr Rechenzeit). Teilweise bekommst Du Effekte, die keiner mehr durchschaut. Felder (Arrays) muss man grundsätzlich dimensionieren.

Guter Code ist weiterhin so geschrieben, dass er auch von anderen verstanden wird, schon allein aus diesem Grund ist das dimensionieren von Variablen als richtigen Typ wichtig (zusätzlich macht es sich gut, Variaben solche Namen zu geben, dass Du auf den Typ hingewisen wirst z.B. "intTest" für eine Integer-Variable), Kommentare sind auch wichtig.

Und noch ein Tipp: wenn Du "Option Explicit" am Anfang jedes Moduls setzt, wirst Du gezwungen, Deine Variablen zu deklarieren.

Schaum mal in Deinen Büchern unter den Stichworten Lesbarkeit, Portierbarkeit und Skalierbarkeit von Code nach.

Gruß

Micha

Anzeige
Re: Dim
17.12.2002 08:58:05
Michael Scheffler
Gerade das ist die Gefahr, das ist nicht gut!

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige