Objekteigenschaften mit Variablen ansprechen
#1
Guten Abend allerseits,

ich scheitere gerade an folgendem Vorhaben:
Ich möchte für ein Excelobjekt (= ein neues Blatt) dessen Name sowie Farbe des Tabellenreiters als Teile einer Eigenschaftsliste ansprechen.

Die Liste "Werte"  ("C8:D9") hält für Name und TabColorIndex die Werte bereit.

Um anzudeuten, was laufen soll, dieser Kurz-Code
Code:
Sub test()

Dim var As Variant
Dim sh As Worksheet

ReDim var(1 To 2, 1 To 2)

var = Range("Werte")

Set sh = ThisWorkbook.Sheets.Add

With sh

   .Name = var(1, 2)
   .Tab.ColorIndex = var(2, 2)

End With

Debug.Print

Tabelle1.Select

End Sub
Nun aber möchte ich  die Eigenschaften selbst mit meiner Auflistung ansprechen und es sollte in etwas so etwas ablaufen (was eben nicht funktioniert):
Code:
Sub test_Läuft_nicht()

Dim var As Variant
Dim sh As Worksheet
Dim z As Integer
ReDim var(1 To 2, 1 To 2)

var = Range("Werte")

Set sh = ThisWorkbook.Sheets.Add

For z = 1 To 2

   sh& "." & var(z, 1) = var(z, 2)

Next z

Debug.Print

Tabelle1.Select

End Sub
Kennt jemand von euch einen Weg, wie sich so etwas bewerkstelligen lässt?
Vielen Dank schon mal und schönen Abend.
(Und ich hoffe, ich konnte mein Anliegen einigermaßen verständlich erklären
Gruß
Ludwig


Angehängte Dateien
.xlsm   LB1972_20191210_ObjektEigenschaften_Variablen.xlsm (Größe: 22,82 KB / Downloads: 3)
Top
#2
Hallo,

m.E. geht das nicht:

Zitat:sh& "." & var(z, 1) = var(z, 2)

Es müßte eher so sein (ungeprüft)
Code:
sh.name = var(1,1)
sh.color = var(2,1)

mfg

(PS: Anhang konnte nicht gelöscht werden)
Top
#3
Hi

ich denke du suchst im Prinzip das hier.  CallByName

Code:
Set sh = ThisWorkbook.Sheets.Add
CallByName sh, Sheets("Tabelle1").Cells(8, 3), 4, Sheets("Tabelle1").Cells(8, 4)
CallByName sh.Tab, Sheets("Tabelle1").Cells(9, 3), 4, Sheets("Tabelle1").Cells(9, 4)


In C9 steht jetzt nicht Tab.ColorIndex sondern nur noch ColorIndex.
Musst du halt noch etwas experimentieren.

Gruß Elex
[-] Folgende(r) 1 Nutzer sagt Danke an Elex für diesen Beitrag:
  • LB1972
Top
#4
Hallo Elex,

Blattschuss!

Danke, selbstverständlich auch an Fennek

Grüße Ludwig
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste