Anzeige
Archiv - Navigation
612to616
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
612to616
612to616
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Variable definieren ?
23.05.2005 13:20:22
Silvi
Hallo und vielen Dank an alle Helfer!
Hab schon ein paar mal wegen diesem Makro geschrieben, muß jetzt nur noch wissen wie ich eine Variable deklariere.
#

Sub vergleichen3()
Dim i, lz As Integer
'Dim b, ? weiß nicht was hier eingesetzt werden muß
Dim c, Wert As Variant
Worksheets("Tabelle2").Activate
With Sheets("Tabelle3")
For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row
For b = 2 To 11
Wert = Cells(i, b)
lz = .Cells(Rows.Count, 1).End(xlUp).Row + 1
Set c = Sheets("Start").Columns(1).Find(What:=Wert, LookIn:=xlValues, LookAt:=xlWhole)
If Not c Is Nothing Then .Cells(lz, 1) = Cells(i, 1): .Cells(lz, b) = Cells(i, b)
Next b
Next i
End With
End Sub
#
Gruß
Silvi

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Variable definieren ?
23.05.2005 13:38:58
Fritz
Hi Silvi,
"b" ist ein Zähler, also Integer-Variable, für die Spalten in Deinem VBA-Code.
Dim b As integer
Fritz
AW: Variable definieren ?
23.05.2005 13:42:25
u_
Hallo,
in dem Fall reicht Dim b As Byte
i und lz solltest du aber als Long deklarieren falls die Tab mehr als 32767 Zeilen haben kann.

Sub vergleichen3()
Dim i As Long, lz As Long
Dim b as Byte
Dim c As Range, Wert As Variant
Worksheets("Tabelle2").Activate
With Sheets("Tabelle3")
For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row
For b = 2 To 11
Wert = Cells(i, b)
lz = .Cells(Rows.Count, 1).End(xlUp).Row + 1
Set c = Sheets("Start").Columns(1).Find(What:=Wert, LookIn:=xlValues, LookAt:=xlWhole)
If Not c Is Nothing Then .Cells(lz, 1) = Cells(i, 1): .Cells(lz, b) = Cells(i, b)
Next b
Next i
End With
End Sub

Gruß
Geist ist geil!
Anzeige
AW: Variable definieren ?
23.05.2005 13:44:55
Tobias
Hi Silvi,
die Variable ist eine Integer-Variable, da du mit ihr hochzaehlst. Wenn du allerdings alle Variablen deklarierst, solltest du im oberen Teil ein

Option Explicit

angeben - damit nimmt VBA nur Variablennamen an, die davor schon deklariert wurden. Das schuetzt dich bei groesseren Makroprojekten vor Fehlern.
Also, einfach

Option Explicit
Dim i, lz, b As Integer

Gruessle
Tobias
Frage natl. nicht mehr offen... (o.T.)
23.05.2005 13:45:32
Tobias
nix
@Tobias
23.05.2005 13:54:18
Kurt
hi Tobias,
Auszug aus der Hilfe:
Sie können mehrere Variablen in einer Anweisung deklarieren. Wenn Sie einen Datentyp angeben möchten, müssen Sie den Datentyp für jede Variable angeben. In der folgenden Anweisung werden die Variablen intX, intY und intZ als Integer deklariert.
Dim intX As Integer, intY As Integer, intZ As Integer
In der folgenden Anweisung werden intX und intY als Variant, und nur intZ als Integer deklariert.
Dim intX, intY, intZ As Integer
Sie müssen die Datentypen der Variablen in der Deklarationsanweisung nicht angeben. Wenn Sie den Datentyp nicht angeben, so wird die Variable auf den Typ Variant festgelegt
...und Tschüss Kurt
Anzeige
AW: @Tobias
23.05.2005 13:56:23
Tobias
Servus Kurt,
mea culpa, hab ich selbst nicht gewusst. Danke fuer den Hinweis (jetz versteh ich auch die Fehlermeldungen, die ich manchmal bekomm...).

Gruss

Tobias
AW: Variable definieren ?
23.05.2005 13:55:41
MichaV
Hi Tobias,
nur als Hinweis:
' Mehrere Deklarationen in einer Zeile. AndereVar hat den Typ
' Variant, da kein Typ angegeben wird.
Dim AndereVar, Auswahl As Boolean, GebDatum As Date
Gruss- Micha
AW: Variable definieren ?
23.05.2005 13:57:13
Tobias
Servus Micha,
Kurt hat mich auch schon drauf hingewiesen - danke Dir trotzdem, wusst ich bisher noch nich :-)

Gruss

Tobias
AW: Variable definieren ?
23.05.2005 14:05:39
MichaV
Hi,
ja, da hat sich was überschnitten...
Mich würde ja nun aber interessieren, welche Fehlermeldungen Du bekommst, wenn Du eine Variable als Variant deklarierst. Ich dachte, das geht immer, ist nur langsamer.
Gruss- Micha
Anzeige
AW: Variable definieren ?
23.05.2005 14:08:47
Tobias
Servus!
Also konkret kann ich dir jetzt kein Beispiel nennen, da ich alle Fehler diesbezueglich irgendwie immer unter Kontrolle bekommen hab, aber ich hatte teilweise Fehler, die mir sagten, dass irgendein Laufzeitfehler aufgetreten sei, den ich nicht erklaeren konnte.
Wenn ich mal wieder so nen Exot "produzieren" kann, geb ich dir auf jeden Fall im Offtopic-Forum Bescheid.
Gruss

Tobias

114 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige