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

Zellennamen in Array ansprechen

Zellennamen in Array ansprechen
22.10.2019 22:18:30
oliver
Hallo zusammen
Ich würde gerne Zellennamen in einem Array definieren und dann an eine Prozedur übergeben um dann mit einzelnen Elementen des Arrays eine Schleife mehrmals durchlaufen. Die Zellen sind bereits über den Namensmanager im Tabellenblatt definiert.
Die Deklaration des Array's hätte ich z.B so gemacht
Dim Phasen() As String
Phasen(1) = "MS_Phase0"
Phasen(2) = "MS_Phase1"
Phasen(3) = "MS_Phase2"
Phasen(4) = "MS_Phase3"
Phasen(5) = "MS_Phase4"
Wie kann ich nun aber in der Prozedur das Array übergeben und dann entsprechenden Zelle ansprechen
bis anhin habe ich den Range der Prozedur übergeben und dann direkt über rng.value angesprochen. _ dies will ich aber nicht mehr da die Zellen nicht fix sind und im Tabellenblatt "wandern" können je nach dem ob eine Zeile eingefügt oder gelöscht wird.

Private Sub FormFarbenSetzen(form As String, anz As Integer, Farbe As Long, rng As Range)
Dim i, r  As Long
For i = 1 To anz
ActiveSheet.Shapes.Range(Array(form & i)).Select
If rng.Value = "f" Then
With Selection.ShapeRange.Fill
.ForeColor.RGB = Farbe
End With
Else
With Selection.ShapeRange.Fill
.ForeColor.ObjectThemeColor = msoThemeColorBackground1
End With
End If
rng = rng.Offset(1, 0)
Next
End Sub

über eure Expertise wäre ich sehr dankbar. lg oliver

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zellennamen in Array ansprechen
22.10.2019 23:14:20
oliver
Habe eine Lösung gefunden
Dim Phasen(1 To 5) As String
Phasen(1) = "MS_Phase0"
Phasen(2) = "MS_Phase1"
Phasen(3) = "MS_Phase2"
Phasen(4) = "MS_Phase3"
Phasen(5) = "MS_Phase4"
Call FormFarbenSetzen("Dreieck", 4, Farbe, Phasen)
Private Sub FormFarbenSetzen(form As String, anz As Integer, Farbe As Long, rng() As String)
Dim i, r  As Long
For i = 1 To anz
ActiveSheet.Shapes.Range(Array(form & i)).Select
If Sheets("Projektplan").Range(rng(i)).Value = "f" Then
With Selection.ShapeRange.Fill
.ForeColor.RGB = Farbe
End With
Else
With Selection.ShapeRange.Fill
.ForeColor.ObjectThemeColor = msoThemeColorBackground1
End With
End If
Next
End Sub

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige