Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1064to1068
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
Inhaltsverzeichnis

Ausgabe Array - Excel 2007 ok - Excel 97 Fehler

Ausgabe Array - Excel 2007 ok - Excel 97 Fehler
03.04.2009 02:38:45
Markus
Schönen guten Morgen miteinander.
Ein Freund bat mich für ihn ein kleines Makro zu schreiben, was bestimmte Werte eines Tabellenblatts mit der Gesamtstatistik in die zugehörigen Projektleitertabellen überträgt.
Die Werte stehen jeden Tag in einer anderen Zeile. Aber immer in der Zeile, in der der erste "" Eintrag in einer Nachbarzelle kommt.
Mit meinem Excel 2007 klappt das wunderbar:

Sub test()
Dim arr As Variant, arr2(4) As Variant, arr3(4) As Variant, arr4(4) As Variant
Dim i As Long, letzteZeile
arr = Array("Projektleiter1", "Projektleiter2", "Projektleiter3", "Projektleiter4", " _
Projektleiter5")
Sheets("Statistik").Activate
letzteZeile = Cells(Rows.Count, 9).End(xlUp).Row    ' letzter Zeile für einen Statistikwert
For i = LBound(arr2) To UBound(arr2)
arr2(i) = Range("D1:D" & letzteZeile).Find(arr(i)).Row   ' Reihe vom Projektleiter  _
finden
' nun die erste leere Zeile in der Spalte F vom Projektleiter finden
arr3(i) = Range(Cells(arr2(i), 6), Cells(letzteZeile, 6)).Find("", LookIn:=xlValues). _
Row
' Werte einlesen von Spalte G bis J
arr4(i) = Range(Cells(arr3(i), 7), Cells(arr3(i), 10)).Value
Next i
' eingelesene Werte auf die jeweiligen Projektleitertabellen übertragen
For i = LBound(arr) To UBound(arr)
Sheets(arr(i)).Activate
Range("e34:h34") = arr4(i)
Next i
End Sub


--------------------------
Bei mir läuft es wunderbar.
Aber bei meinem Freund kommt mit Excel 97 immer eine Fehlermeldung (ich glaube 1004) an der Stelle, wo ich das Array zurückschreiben möchte.
Auf die Schnelle habe ich das zwar mit Range().copy und PasteSpecial bei ihm gelöst.
Aber ihr versteht sicherlich, daß mich das nervt.
Wo liegt der Fehler? Hat jemand einen Lösungsansatz?
MfG
Markus

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

Betreff
Datum
Anwender
Anzeige
Möglicherweise akzeptiert xl8 keinen...
03.04.2009 04:00:41
Luc:-?
...Variant mit einem Feld bei der Zuweisung an Zellen, Markus.
Dann müsstest du Einzelzuweisungen schreiben...
Range("E34") = arr4(i)(0) usw...
...oder beide xlVersionen sind unterschiedlich eingestellt, so dass in der einen Version das Feld 4, in der anderen 5 Werte enthält - einer ist dann Empty; aber das sollte eigentlich keine derartigen Auswirkungen haben... (?)
Gruß Luc :-?
AW: Möglicherweise akzeptiert xl8 keinen...
03.04.2009 07:50:34
Markus
Danke für die Hinweise, Luc :-?
Ich schau nachher gleich mal bei der Variablenüberwachung im Debugger, ob es Unterschiede gibt.
Mit Excel 2007 wird arr4 mit 5 Feldern und den zugehörigen 4 Werten bestückt:
arr4(0)(1) : : Variant(1 to 4)
arr4(0)(1,1) : 0,174443043295502 : Variant/Double
...
arr4(0)(1,4) : 69,9974779319042 : Variant/Double
...
arr4(4)(1,4) : 61,7490039840637 : Variant/Double
Mal sehen, wie es in Excel 97 aussieht.
Danke nochmal Luc :-?
Anzeige
Bitte sehr! Hoffentl hilft's... Gruß owT
03.04.2009 16:37:51
Luc:-?
:-?
AW: Bitte sehr! Hoffentl hilft's... Gruß owT
06.04.2009 23:04:10
Markus
Hoi Luc :-?,
entschuldige die späte Rückmeldung. Ich kam leider erts jetzt zum testen mit seiner Version.
Und das "hart" eintragen ala arr4(0)(1,1) funktioniert wunderbar.
Vielen Dank nochmals.
MfG
Markus
Besser spät als gar nicht... ;-) Gruß owT
08.04.2009 06:17:34
Luc:-?
:-?

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige