Re: VBA - Formelergebnis aus Zelle auslesen
15.08.2002 12:25:54
Ralph
Danke! Das funtkioniert hier zwar auch, hilft aber leider nicht weiter. Ich poste mal die bisherige Prozedur - vielleicht habe ich ja auch irgendeinen Fehler übersehen. Die Mischkurse werden problemlos eingelesen, aber beim Einlesen der Daten muckt er dann. Test-Aufruf im Direktfenster mit '?Umrechnung ("VJ", "AE", "EUR", 3)'.Ergänze ich die Suchspalte mit "AE" (statt einer Formel), läuft die Schleife für das Einlesen der Daten problemlos durch.
Dim Mischkurs(1 To 12), Perfcardwert(1 To 12) As Single
Public Function Umrechnung(Tabelle, Umrobjekt, Kurs, aktMonat)
Set Kursblatt = Workbooks("PerfCard.xls").Worksheets("Mischkurse") 'Referenz auf Mischkursblatt
Set Datenblatt = Workbooks("PerfCard.xls").Worksheets(Tabelle) 'Referenz auf Datenblatt
Debug.Print Tabelle, Umrobjekt, Kurs, aktMonat
'Arrays löschen
For i = 1 To 12
Mischkurs(i) = 0
Perfcardwert(i) = 0
Next i
' Mischkurse einlesen
Kursblatt.Activate
For i = 1 To aktMonat
Kursblatt.Range("A:A").Find(Kurs).Activate 'Erste Zelle in Mischkurszeile aktivieren
Set Monatskurs = ActiveCell.Offset(0, i + 1) 'Erster Mischkurs-Wert in Spalte 3
Mischkurs(i) = Monatskurs.Value 'Mischkurs-Array füllen
Debug.Print i; Mischkurs(i);
Next i
Debug.Print 'Zeilenumbruch
' Daten in Landeswährung einlesen (jeweils eine Zeile bzw. ein Wert, z.B. AE, U, EBIT)
Datenblatt.Activate
For i = 1 To aktMonat
Datenblatt.Range("A:A").Find(Umrobjekt).Activate 'Erste Zelle in Datenzeile aktivieren
Set Monatswert = ActiveCell.Offset(0, i) 'Erster Datenwert in Spalte 2
Perfcardwert(i) = Monatswert.Value 'Datenarray füllen
Debug.Print i; Perfcardwert(i);
Next i
End Function