Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1060to1064
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

Problem mit Array

Problem mit Array
22.03.2009 14:07:35
Lorenz
Hallo Excelianer!
Ich brauche mal wieder eure Hilfe. Ich kriegs einfach nicht hin. Es soll die benannte Formel "FamVorName" in den Blättern 1. bis 18. in jeweils A1:A21 eingetragen werden. Ich wählte deshalb Array statt Schleife, da in der Schleife die Bätter einzeln gewählt werden und Array`s angeblich schneller verarbeitet werden.

Sub ausfüllen()
Dim arrSht As Variant, arrRng As Variant
arrSht = Array("1.", "2.", "3.", "4.", "5.", "6.", "7.", "8.", "9.", "10.", "11.", "12.", "   _
_
_
13.", "14.", "15.", "16.", "17.", "18.")
arrRange = Array("A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "A16", "   _
_
_
A17", "A18", "A19", "A20", "A21")
Sheets(arrSht).Range(arrRng).FormulaLocal = Range("FamVorName")
End Sub


Hat jemand nen Tipp?
Danke Lorenz

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
warum Array, Schleife ist schnell genug.
22.03.2009 14:29:28
Tino
Hallo,
für diese bar Zellen kannst Du es ruhig über eine Schleife machen.

Sub ausfüllen()
Dim i As Integer
For i = 1 To 18
Sheets(i & ".").Range("A6:A21").Value = Range("FamVorName")
Next i
End Sub


Gruß Tino

AW: warum Array, Schleife ist schnell genug.
22.03.2009 14:51:28
Lorenz
Hallo Tino!
Wenn die Schleifen wie du sagst "schnell genug" sind, werde ich mir für diese Zwecke die Arrays aus dem Gedächtnis streichen.
Danke für deinen Tipp!
Grüsse
Lorenz
AW: Problem mit Array
22.03.2009 14:29:37
Daniel
Hi
was verbirgt sich den hinter Range("FamVorName")?
damit dein Makro richtig läuft, musst du an ".FormulaLocal" einen String übergeben, der einer funktionierenden Excel-Formel entspricht (in diesem Fall in lokaler (Deutscher?) A1-Schreibweise).
Wahrscheinlich müsstest du es so schreiben:

Sheets(arrSht).Range(arrRng).FormulaLocal = Range("FamVorName") .FormulaLocal


außerdem darf arrRng kein Array sein sondern nur ein einfacher String, im Prinzip würde reichen:
Range("A6:A21").FormulaLocal = ...
desweiteren funktioniert bei mir die Zuweisung an ein Array von Worksheets nicht direkt.
das einzige, was geht, ist: erst selektiern, dann zuweisen.
so müsste dein Makro funktonieren, wenn der Formelstring passt:


Sub ausfüllen()
Dim arrSht As Variant, arrRng As String
arrSht = Array("1.", "2.", "3.", "4.", "5.", "6.", "7.", "8.", "9.", "10.", "11.", "12.", " _
13.", "14.", "15.", "16.", "17.", "18.")
arrRange = "A6:A21"
Sheets(arrSht).Select
Selection.Range(arrRng).FormulaLocal = Range("FamVorName").FormulaLocal
End Sub


Gruß, Daniel

Anzeige
AW: Problem mit Array
22.03.2009 14:54:14
Lorenz
Hallo Daniel!
Ich werde mich an Tino`s Tipp halten. Deinen Tipp werde ich aber trotzdem (für größere Bereiche) verwenden.
Danke u. viele Grüße
Lorenz

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige