Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
668to672
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
668to672
668to672
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Feld (Vektor) defnieren

Feld (Vektor) defnieren
19.09.2005 15:22:32
Denis
Hallo zusammen,
weiß jemand von Euch, wie man ein Feld deklariert ? Ich will mehrere Datensätze in das Feld "Bereich" einlesen.
Bsp. in Bereich(1) steht XY, in Bereich(2) steht YC ?
Als was muß ich die Variable Bereich definieren - Double ?
Wie lautet der VBA Code ?
Bereich[1] = cells(X,y) - oder wie ?
Ich danke Euch schon mal im Vorraus
Gruss
Denis

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Feld (Vektor) defnieren
19.09.2005 15:27:38
MichaV
Hallo,
guck mal in der VBA- Hilfe nach "Verwenden von Datenfeldern"
"Als was muß ich die Variable Bereich definieren - Double " ... wenn das "XY" steht, dann als String.
Gruss- Micha
PS: Rückmeldung wäre nett.
AW: Feld (Vektor) defnieren
19.09.2005 15:38:42
Denis
Hallo Micha,
in der VBA Office kann ich leider nichts genaueres finde.
Vielleicht kannst Du mir weiterhelfen. Ich schildere Dir mal mein Problem :
Folgende Sub habe ich in VBA geschrieben :
Sub test()
Dim fnd as variant
Dim lngstart as long
Dim Bereich() as long
With Worksheets("subunternehmer")
Set fnd = .Columns(1).Find("A", LookAt:=xlWhole, LookIn:=xlValues)
If Not fnd Is Nothing Then lngstart = fnd.Row
Jetzt habe ich folgendes Problem : ich will die Zeilennummer, die sich in der Variable lngstart befindet in das Feld Bereich(1) schreiben. Danach suche ich nach "B" und will die Zeilennummer in Bereich(2) schreiben.
Ich bin grad in den Anfängen von VBA - kannst Du mir dabei vielleicht weiterhelfen, wie ich das in VBA schreibe ?
Gruss
Denis
Anzeige
AW: Feld (Vektor) defnieren
19.09.2005 21:38:12
MichaV
Hallo,
nur noch ein kleiner Schritt. Ich hab Dir das mal ein bischen kommentiert. Am Besten, Du gehst alles mit der F8- Taste Schritt für Schritt durch. Wenn Du mit der Maus auf eine (Feld-) Variable zeigst, dann wird der derzeitige Inhalt angezeigt.
Es ist einfacher als es aussieht.


      
Option Explicit
Sub test()
Dim fnd As Range
Dim lngstart As Long
Dim Bereich() As Long
Dim i As Integer
Dim SucheNach
SucheNach = Array("A", "B", "C", "D", "E", "F")
ReDim Bereich(0)
'Bereich initialisieren. Das ist notwendig, weil es oben als () deklariert ist
'Wenn Du es als (1 to 5) deklarierst, ist das nicht notwendig. Dann ist die
'Anzahl der enthaltenen Elemente aber schwerer zu ermitteln, weil
'am Anfang schonmal 5 leere Elemente vorhanden sind.

With Worksheets("Tabelle1")
For i = LBound(SucheNach) To UBound(SucheNach)
'vom ersten bis letzten Element des Such-Arrays also von "A" bis "F"
  Set fnd = .Columns(1).Find(SucheNach(i), LookAt:=xlWhole, LookIn:=xlValues)
  
'danach suchen
  If Not fnd Is Nothing Then
    lngstart = fnd.Row
    
'wenn gefunden, dann Feld "Bereich" um ein Element erweitern
    ReDim Preserve Bereich(UBound(Bereich) + 1)
    
'und in das soebend angelegte Element den Wert eintragen.
    Bereich(UBound(Bereich)) = lngstart
    
'Bereich(0) ist weiterhin leer. Das erste gefundene Element steht in
    'Bereich(1).
  End If
Next i
Set fnd = Nothing
End With
'Die Anzahl der gefundenen Elemente entspricht also gleich der
'Obergrenze des Datenfeldes, weil Element(0) ja leer ist.
MsgBox "Es wurden " & UBound(Bereich) & " Daten gefunden"
If UBound(Bereich) > 0 Then MsgBox "Der erste Treffer ist in Zeile " & Bereich(1)
End Sub 
PS: Rückmeldung wäre nett.
Anzeige
AW: Feld (Vektor) defnieren
20.09.2005 07:34:58
Denis
Super !!!!
Ich danke Dir vielmals für Deine Bemühungen Micha. Jetzt kann ich endlich meine Excel Datei anpassen.
Nochmals vielen Dank.
Gruss
Denis
AW: Feld (Vektor) defnieren
19.09.2005 15:27:41
u_
Hallo,
geht's ein bisschen genauer? Da gibt es mehrere Möglichkeiten.
für dein Bspl:
Dim Bereich(2)
Bereich(1)="xy"
Bereich(2)="yc"
Gruß
Geist ist geil!

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige