Das Clever-Excel-Forum.de - Treffen
findet vom 15. - 17. September 2017 in Thüringen / Region Großer Inselsberg statt. Hotelbuchung ab sofort möglich.


Gültigkeit erstellen
#1
Rainbow 
Hallo Forum,

ich möchte in VBA in den Zellen B6 bis B30 ein eine Gültigkeit erstellen!
für Zelle B6: Gültigkeit - Liste - =INDIREKT($A6)
für Zelle B7: Gültigkeit - Liste - =INDIREKT($A7) usw.

Kann mir jemand dabei helfen, ich habe es mit dem Makrorecorder aufgezeichnet, klapp leider nicht!

Danke schon mal.

P.S. ich wünsche allen einen guten Rutsch ins Jahr 2015!71
to top
#2
Hallöchen,

da musst Du eventuell mit Bereichsnamen arbeiten und dort das INDIREKT verarbeiten. Bei mir steht übrigens A1 im Namen, wieso hier A10 ausgegeben wird, k.A.

Arbeitsblatt mit dem Namen 'Tabelle1'
 ABC
1B1:B1014
2 2 
3 3 
4 4 
5 5 
6 6 
7 7 
8 8 
9 9 
10 0 

NameBezug
BER_A6=INDIREKT(Tabelle1!A10)

ZelleGültigkeitstypOperatorWert1Wert2
C1Liste =BER_A6 
Diese Tabelle wurde mit Tab2Html (v2.5.0) erstellt. ©Gerd alias Bamberg
   \\\|///      Hoffe, geholfen zu haben.
   ( ô ô )      Grüße, André aus G in T  
 ooO-(_)-Ooo    (Excel 97-2016)
to top
#3
Hallo Andrè,

in Zeile A6 bis A30 habe ich die Gültigkeit, mit dem Bereichnamen erstellt,
und jetzt soll jenachdem was in Zelle A6 steht der Bezug dazu in Zelle B6 ausgewählt werden.

in Spalte A steht die Statiom,
in Spalte B steht das Zimmer!

Stationen Zimmer
Stat.1 01 02 03 04 05 06 07 08 09 10
Stat.2 21 22 23 24 25 26 27 28 29 30
Stat.3 31 32 33 34 35 36 37 38 39 40
Stat.4 41 42 43 44 45 46 47 48 49 50

es gibt Bereichsnamen Staionen, Stat.1, Stat2, usw.

und der Befehl =INDIREKT($A6) soll in Zelle B6 bis B30 als Gültigkeit eingetragen werden.

Gruss
Klaus
Gruß Klaus

es Grüßt der niederRhein! 17

Office 2010
to top
#4
Hallo,

ich bin mir nicht sicher, aber könnte es sein, dass du sowas suchst?

http://www.excelformeln.de/tips.html?welcher=84

http://netcult.ch/MVP_Ramel/Files/Guelti...direkt.XLS
Gruß
Peter
to top
#5
Hallo Peter,
ja genau so hab ich das auch gemacht,
aber in dem Tabellenblatt werden immer wieder ganze Zeilen gelöscht und anschließend wird das Tabellenblatt kopiert
und mit den restlichen Daten weiter verwendet. Und irgendwann sind in Spalte A und B keine Gültigkeiten mehr da.
Deshalb wollte ich die Gültigkeiten mit VBA einfügen!

Gruß
Klaus
to top
#6
Hallo Klaus,

Code:
Sub Makro1()
  With Range("B6:B30").Validation
    .Delete
    .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, _
            Operator:=xlBetween, Formula1:="=INDIREKT($A6)"
    .IgnoreBlank = True
    .InCellDropdown = True
    .InputTitle = ""
    .ErrorTitle = ""
    .InputMessage = ""
    .ErrorMessage = ""
    .ShowInput = True
    .ShowError = True
  End With
End Sub

Gruß Uwe
to top
#7
Hallo Uwe,

hab ich auch schon versucht,

das Makro hält immer hier an.
Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, _
Operator:=xlBetween, Formula1:="=INDIREKT($A6)"


Gruss
Klaus
to top
#8
Hallo Klaus,

verbundene Zellen in Spalte A und/oder B?

Gruß Uwe
to top
#9
Hallo zusammen,

die Formel für die Gütigkeitsprüfung müssen in englisch sein:

.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, _
Operator:=xlBetween, Formula1:="=INDIRECT(A6)"
Gruß Atilla

Excel 2007
to top
#10
Guten Morgen Forum.
Alles gute für's neue Jahr wünsch ich euch!

Das Makro ist nur für Zelle B6, wie muss es lauten wenn es für den Bereich B6:B30 aus geführt werden soll?

Sub Gültigkeit() 'Daten Gültigkeit in Spalte B =INDIRECT($A6)

With Range("B6").Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=INDIRECT($A6)"
.IgnoreBlank = True
.InCellDropdown = True
End With
End Sub


Gruss
Klaus
Gruß Klaus

es Grüßt der niederRhein! 17

Office 2010
to top


Gehe zu:


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