Meinews.de  


Zurück   Meinews.de > Forum > Newsgroups microsoft.public.de.* 1 Forum > Newsgroup microsoft.public.de.access
Registrieren FAQ Benutzerliste Kalender Suchen Heutige Beiträge Alle Foren als gelesen markieren

Newsgroup microsoft.public.de.access Forum microsoft.public.de.access

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 11-02-2009, 07:22 PM
Stefan Paesch
 
Beiträge: n/a
Standard Array per Schleife auslesen (LBound to Ubound)

Moin zusammen,

ich möchte ein gefüllten Array per Schleife auslesen.
Der Array ist wie folgt befüllt: ArrHaus(Keller; Etage; Dach)

So hatte ich mir das gedacht (Beispielhaft):

Dim vIndex as integer

For vIndex = LBound(ArrHaus) To UBound(ArrHaus)
Debug.Print ArrgHaus(vIndex)
Next vIndex

Nur leider wird nur "Dach" ausgegeben. Die Zeilen davor sind da, aber
leer (ohne Werte).

Nach meinem Verständnis wird in die Schleife eingetreten, vIndex wird
mit '1' befüllt. Dann soll Array(1) ausgegeben werden.
Dann wird durch 'Next vIndex' 'vIndex' um 1 hochgezählt und Array(2)
soll ausgegeben werden.
Aber 1 und 2 sind wie gesagt ohne Werte.

LBound und UBound haben die richtigen Werte im Einzelschrittmodus (1
to 3)
Was mache ich falsch? Hat jemand einen TIpp?

Danke Stefan.

Vista 64 bit, Acc 2007 alle SP


Mit Zitat antworten
Alt Today
Advertising
Google Adsense
 
This advertising will not be shown
in this way to registered members.
Register your free account today
and become a member on
Meinews.de
Standard Sponsored Links

  #2  
Alt 11-02-2009, 07:26 PM
Stefan Paesch
 
Beiträge: n/a
Standard Re: Array per Schleife auslesen (LBound to Ubound)

ooooh Fehlerteufel:

Dim vIndex as integer

For vIndex = LBound(ArrHaus) To UBound(ArrHaus)
Debug.Print ArrHaus(vIndex)
Next vIndex

Mit Zitat antworten
  #3  
Alt 11-02-2009, 07:36 PM
Thomas Möller
 
Beiträge: n/a
Standard Re: Array per Schleife auslesen (LBound to Ubound)

Hallo Stefan,

Stefan Paesch schrieb:
> ich möchte ein gefüllten Array per Schleife auslesen.
> Der Array ist wie folgt befüllt: ArrHaus(Keller; Etage; Dach)
>
> So hatte ich mir das gedacht (Beispielhaft):
>
> Dim vIndex as integer
>
> For vIndex = LBound(ArrHaus) To UBound(ArrHaus)
> Debug.Print ArrgHaus(vIndex)
> Next vIndex
>
> Nur leider wird nur "Dach" ausgegeben. Die Zeilen davor sind da, aber
> leer (ohne Werte).
>
> Nach meinem Verständnis wird in die Schleife eingetreten, vIndex wird
> mit '1' befüllt. Dann soll Array(1) ausgegeben werden.
> Dann wird durch 'Next vIndex' 'vIndex' um 1 hochgezählt und Array(2)
> soll ausgegeben werden.
> Aber 1 und 2 sind wie gesagt ohne Werte.
>
> LBound und UBound haben die richtigen Werte im Einzelschrittmodus (1
> to 3)
> Was mache ich falsch? Hat jemand einen TIpp?


schau bitte mal in die OH. Die Funktion LBOUND hat noch eine zweiten
Parameter. Damit kannst Du die Dimension angeben, die Du auswerten möchtest.

Aus der OH:
- - 8< - - 8< - - 8< - -
LBound gibt für ein Datenfeld mit den folgenden Dimensionen die in der
anschließenden Tabelle aufgeführten Werte zurück:

Dim A(1 To 100, 0 To 3, -3 To 4)

Anweisung Rückgabewert
Lbound(A, 1) 1
Lbound(A, 2) 0
Lbound(A, 3) -3
- - 8< - - 8< - - 8< - -

Wenn Du also Dein komplette Array durchlaufen möchtest müsste Dein Code
ungefähr so aussehen:

- - 8< - - 8< - - 8< - -

Dim i As Integer
Dim j As Integer
Dim k As Integer

For i = LBound(ArrHaus,1) To UBound(ArrHaus,1)
For j = LBound(ArrHaus,2) To UBound(ArrHaus,2)
For k = LBound(ArrHaus,3) To UBound(ArrHaus,3)
Debug.Print ArrHaus(i,j,k)
Next k
Next j
Next i

- - 8< - - 8< - - 8< - -



CU
--
Thomas

Homepage: www.Team-Moeller.de
Mit Zitat antworten
  #4  
Alt 11-02-2009, 08:05 PM
Stefan Paesch
 
Beiträge: n/a
Standard Re: Array per Schleife auslesen (LBound to Ubound)

Hallo Thomas,

danke für Deine Antwort.
Ich denke, mein Problem produziere ich schon beim befüllen des Arrays
(glaube ich).

Ausgangssituation:
Die Grundrisse der einzelnen Etagen (Keller, Wohnung, Dachboden) sind
als PDF auf der Festplatte gespeichert.
Mit einem DateiDialog sollen z.B. drei Dateien gleichzeitig geöffnet
werden. Der FileDialog ist als Funktion ausgelegt, die die Dateien
(Anzahl erst einmal unbekannt) in einen Arry zur weiteren Bearbeitung
einlesen soll.

.........
If .Show Then
For Each vAuswahl In .SelectedItems 'durchlaufen der
markierten Auswahl
ReDim ArrDateiAuswahl(1 To vIndex) 'Deklarierung der
Array-Grösse während der Laufzeit, da vorher Größe nicht bekannt,
'ist Abhängig von
der Anzahl der ausgewählten Dateien
ArrDateiAuswahl(vIndex) = vAuswahl ' Array befüllen
vIndex = vIndex + 1
Next
...........

Nun habe ich gelesen, das mit Redim alle bereits im Datrenfeld
vorhandenen Werte gelöscht werden. Das wohl mein Problem!
Der Code ist also Grütze :-(
Wie erhalte ich die schon eingelesenen Werte und füge trotzdem neue
Dimensionen an?

Danke Stefan.


Mit Zitat antworten
  #5  
Alt 11-02-2009, 08:36 PM
Thomas Wolf
 
Beiträge: n/a
Standard Re: Array per Schleife auslesen (LBound to Ubound)

Hallo Stefan

Nun habe ich gelesen, das mit Redim alle bereits im Datrenfeld
vorhandenen Werte gelöscht werden. Das wohl mein Problem!
Der Code ist also Grütze :-(
Wie erhalte ich die schon eingelesenen Werte und füge trotzdem neue
Dimensionen an?

Mit Preserve

Gruss
Thomas


Mit Zitat antworten
  #6  
Alt 11-02-2009, 08:54 PM
Stefan Paesch
 
Beiträge: n/a
Standard Re: Array per Schleife auslesen (LBound to Ubound)

On 2 Nov., 21:36, "Thomas Wolf" <thomasw...*bluewin.ch> wrote:

> Mit Preserve


Na da sage ich doch mal danke! Hat geklappt.
So siehts dann aus
.........
If .Show Then
For Each vAuswahl In .SelectedItems
ReDim Preserve ArrDateiAuswahl(1 To vIndex) 'Preserve
eingefügt
ArrDateiAuswahl(vIndex) = vAuswahl ' Array befüllen
vIndex = vIndex + 1
Next
..........

Also noch einmal Danke an beide Thomas´s.

Stefan
Mit Zitat antworten
 
Antwort


Themen-Optionen
Ansicht

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen
Es ist dir nicht erlaubt, auf Beiträge zu antworten
Es ist dir nicht erlaubt, Anhänge anzufügen
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten

vB Code ist An
Smileys sind An
[IMG] Code ist An
HTML-Code ist Aus

Ähnliche Themen
Thema Erstellt von Forum Antworten Letzter Beitrag
foreach-Schleife mit Array von Hashes? Frank Glück Newsgroup de.comp.lang.perl.misc 3 10-02-2008 08:15 AM
Convert Integer Array in System.Array Manfred Newsgroup microsoft.public.de.german.entwickler.dotnet.vb 2 08-29-2008 10:27 PM
kommt mein String im Array vor? Array.IndexOf scheint sich zu irren? Liz Helmecke Newsgroup microsoft.public.de.german.entwickler.dotnet.vb 1 03-28-2008 12:35 PM
Index aus assoziativem Array auslesen Franc Walter Newsgroup de.comp.lang.php.misc 7 12-22-2007 10:53 AM
Array in for Schleife speichern Olaf Gleba Newsgroup de.comp.lang.javascript 6 12-15-2007 02:51 PM


Alle Zeitangaben in WEZ. Es ist jetzt 01:10 PM Uhr.





Powered by: vBulletin Version 3.6.7 (Deutsch)
Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
Forum SEO by Zoints