HERBERS Excel-Forum - das Archiv
Name per VBA definieren
Horst

Hallo
ich habe einem bestimmten Bereich einen Namen ("Kunde") zugewiesen.
(Unter "Einfügen" "Namen" "definieren")
Nun will ich diesen definierten Bereich mit VBA Code erweitern.
D.H. ich kenne die neue untere und obere Grenze des Bereichs und den Namen,
bekomme jedoch nicht den richtigen VBA Bafehl zusammen.
So ungefähr könnte ich mir folgendes vorstellen, aber leider klappt es nicht... :-(
Sheets("Test").Names.Add Name:="Kunde", =Namen! Range(Cells(Zeile,Spalte),Cells(Zeile,Spalte)
Vielen Dank im Voraus
Gruß Horst

AW: Name per VBA definieren
Luschi

Hallo Horst,
wenn der Name schon existiert, dann so:
ActiveWorkbook.Names("Kunde").RefersTo = "=Tabelle1!$F$3:$G$14"
es geht aber auch so (dann muß der Name noch nicht existieren), es wird der vorhandene Name aber auch angepaßt:
ActiveWorkbook.Names.Add Name:="Kunde", RefersTo "=Tabelle1!$F$3:$G$14"
Gruß von Luschi
aus klein-Paris
AW: Name per VBA definieren
Horst

Hallo Luschi,
Dein Code funktioniert soweit, ich habe jedoch das Problem, dass ich nicht ich nicht die
absolute Adresse (z.B. F3) habe, sondern eben nur wie beschrieben die Zeilen und Spaltennummer.
Ich tu mich leider bei der Umstellung von Range auf Cells immer schwer. Und hier steht das ganze noch in
" ".
Ich hoffe Du kannst mir nochmals helfen.
Vielen Dank im Voraus
Gruß Horst
AW: Name per VBA definieren
IngGi

Hallo Horst,
ich will mich ja nicht vordrängen, aber genau das hatte ich in meiner Antwort berücksichtigt. Wenn du mal einen Blick drauf wirfst.
Gruß Ingolf
AW: Name per VBA definieren
IngGi

Hallo Horst,
lngZeile1, lngZeile2, lngSpalte1 und lngSpalte2 sind Longvariablen:
Sheets("Test").Names.Add Name:="Kunde", RefersToR1C1:="Tabelle1!R" & _
lngZeile1 & "C" & lngSpalte1 & ":R" & lngZeile2 & "C" & lngSpalte2
Gruß Ingolf
AW: Name per VBA definieren
Climbi

Hallo Ingolf,
sorry ich habe Deinen Beitrag erst später gesehen....vielen Dank auf jeden Fall
Habe Deinen Vorschlag mal getestet, es funktioniert jedoch nicht so wie ich mir das vorstelle.
Der Bereich, den ich vorher vorgegeben habe wird durch den VB Code restlos verbogen.
Ich werde mal weiter testen..
Gruß Horst
AW: Name per VBA definieren
IngGi

Hallo Horst,
damit die Codezeile funktioniert, musst du in lngZeile1 und lngSpalte1 die Zeilen- und Spaltennummer der oberen linken Zelle des neuen Bereiches übergeben und in lngZeile2 und lngSpalte2 die entsprechenden Angaben für die untere rechte Zelle.
Gruß Ingolf