Das Archiv des Excel-Forums

Array aus einem String heraus befüllen

Bild

Betrifft: Array aus einem String heraus befüllen
von: Frank

Geschrieben am: 14.10.2003 18:25:05

Hallo hilfreiche Forumsleser,

ich habe ein Problem mit einer Konsolidierungsfunktion in VBA.

Bisher habe ich mir die Namen der einzelnen Blätter mittels VBA ausgelesen und diese mitsamt dem Bereich in einen String geschrieben.

Die VBA-Konsolidierungsfunktion benötigt nun aber einen Array. Das Problem ist, dass die Funktion sowohl unter Excel XP, als auch unter Excel 97 laufen muß.

Ich hoffe Ihr könnt mir weiterhelfen. Hier mal auszugweise der Code:
(wenn ich den Code so ablaufen lasse erhalte ich immer den "Laufzeitfehler '1004' Anwendungs oder Objektdefinierter Fehler"...)


j = ActiveWorkbook.Worksheets.Count
For i = 2 To j

Name = wb.Worksheets(i).Name

Kette = Kette & """'" & WBName & "\[zusammenfassung.xls]" & Name & "'!R31C19:R101C58"","

Next i

Kette = Right(Kette, Len(Kette) - 1)
Kette = Left(Kette, Len(Kette) - 2)

wb.Worksheets(1).Select
Range("S31").Select

Selection.Consolidate Sources:=Array(AKette), Function:=xlSum, TopRow:=False, LeftColumn:=False, CreateLinks:=False


Wie schon geschrieben. Ich hoffe, dass ihr mir weiterhelfen könnt...
Herzlichen Dank für Eure Mühen im voraus

Frank
Bild


Betrifft: AW: Array aus einem String heraus befüllen
von: Hans W. Hofmann
Geschrieben am: 14.10.2003 18:39:46

So kann das nicht gehen Aus String kannst Du keinen Array bilden...
Schlag nach unter Split.
Für XL97 musst Du allerdings die Split-Funktion nachbauen.
Da liegt Code in der KB bei MS - nachlesen.

Gruß HW


Bild


Betrifft: AW: Array aus einem String heraus befüllen
von: Boris
Geschrieben am: 14.10.2003 19:28:03

Hi Frank,

ich bin nun nicht der VBA-Fachmann, denn ich halte es lieber mit den Formeln - allerdings haben wir seinerzeit eine - wie ich finde - geniale Formellösung gefunden, um aus einem String ein Array zu generieren.
Es war das Excel4-Macro AUSWEERTEN von Nöten - in VBA wohl "Evaluate".

Schau dir das hier mal an - da hab ich den ganzen Thread nochmal zusammengefasst. Vielleicht kannst du es für VBA verwenden.

http://forum.myphorum.de/read.php?f=3040&i=23966&t=23966

Grüße Boris


Bild


Betrifft: AW: Array aus einem String heraus befüllen
von: Frank
Geschrieben am: 15.10.2003 10:46:43

Danke für Eure Mühen,

allerdings konnte mir das noch nicht richtig weiterhelfen, da ich die Umsetzung per VBA lösen muß.

Soweit bin ich mittlerweile:

k = 0
j = ActiveWorkbook.Worksheets.Count
For i = 2 To j

Name = wb.Worksheets(i).Name

Kette = " '" & WBName & "\[zusammenfassung.xls]" & Name & "'!R31C19:R101C58"
AKette(k) = Kette
k = k + 1
Next i

wb.Worksheets(1).Select
Range("S31").Select

Selection.Consolidate Sources:=Array(AKette), Function:=xlSum, TopRow:=False, LeftColumn:=False, CreateLinks:=False


Wobei ich AKette als Array dimensioniert habe. Die einzelnen Tabellenblätter stehen nun auch schön in den einzelnen Arrayfeldern.
Allerdings erhalte ich jetzt an der Stelle "Selection.Consolidate Sources..." einen "Laufzeitfehler '1004' Anwendungs- oder objektdefinierter Fehler".

Offensichtlich bin ich zu doof, dieses Array in der Konsolidierungsformel einzufügen. Was mache ich falsch...

Ich hoffe ich könnt mir nochmal weiterhelfen...
Danke im voraus

Frank


Bild


Betrifft: Habe die Lösung gefunden
von: Frank
Geschrieben am: 15.10.2003 17:07:34

Danke an alle die sich hier Mühe gegeben haben.

Zwar haben Eure Hinweise mich nicht zur Lösung gebracht, aber ich habe es in der Zwischenzeit zum Laufen bekommen.

Lösung: Ein falsch eingefügtes Leerzeichen stand der Erreichung des Ziels im Weg...

Trotzdem Danke an Alle
Frank


 Bild

Excel-Beispiele zum Thema " Array aus einem String heraus befüllen"

Nach Textimport Strings in Zahlen wandeln download Textstring in berechenbare Formel umwandeln download
Zahlenstring mit Formel auslesen und Fehlermeldung verhindern download Wertermittlung in Abhängigkeit eines Zeichens in einem String download
Sortierung mit Formel-Leerstrings am Ende download Stringeingaben von HHMM und HHMMSS in Zeit wandeln download
Aufteilen eines Strings mit Zeilenumbrüchen download Aufhebung der Suchstringbegrenzung von 255 Zeichen download
Strings, die wie Zahlen aussehen, in Zahlen umwandeln download Aus einem String mit Datumsangabe das Jahr auslesen download
String mit Prüfziffer über Dialogeingabe erstellen download Teilstrings vergleichen und markieren download
Aus Excel heraus ein Worddokument drucken download Wordmakro aus Excel heraus aufrufen download
Aus Excel heraus eine Email ohne Arbeitsmappenanlage versenden download