[]
excel ile ilgili data validation sorusu
merhaba,
excel'de şöyle bir macro yazdım:
data validation ile oluşturduğumuz bir drop-down menü var. bu menüdeki verilerden birine tıkladığımızda sayfadaki tablolarda yer alan veriler değişiyor. daha sonra ben bu tablonun çıktısını yazdığım macro ile pdf olarak alabiliyorum. fakat her seferinde tek tek dropdown'u açıp başka bir veriyi seçmem gerekiyor.
isteğim, macro otomatik olarak dropdown menüdeki bütün seçenekleri teker teker seçsin ve pdflerini alsın.
sorum, dropdowndaki verileri sırayla seçmesini nasıl sağlayabilirim? en azından dropdown'daki veriyi seçme komutu nedir?
(muhtemelen bir for döngüsü kullanılacak diye tahmin ediyorum.)
excel'de şöyle bir macro yazdım:
data validation ile oluşturduğumuz bir drop-down menü var. bu menüdeki verilerden birine tıkladığımızda sayfadaki tablolarda yer alan veriler değişiyor. daha sonra ben bu tablonun çıktısını yazdığım macro ile pdf olarak alabiliyorum. fakat her seferinde tek tek dropdown'u açıp başka bir veriyi seçmem gerekiyor.
isteğim, macro otomatik olarak dropdown menüdeki bütün seçenekleri teker teker seçsin ve pdflerini alsın.
sorum, dropdowndaki verileri sırayla seçmesini nasıl sağlayabilirim? en azından dropdown'daki veriyi seçme komutu nedir?
(muhtemelen bir for döngüsü kullanılacak diye tahmin ediyorum.)
Data Validation bir hücrenin değerini değiştiriyorsa ve değerler önceden belirliyse o hücreye değerleri atayarak çözebilirsin for döngüsüyle.
Değerler önceden belirli değilse aşağıdaki gibi çözüm kullanabilirsin.
Sub loopthroughvalidationlist()
Dim inputRange As Range
Dim c As Range
Set inputRange = Evaluate(Range("D2").Validation.Formula1)
For Each c In inputRange
'... do something with c.Value
Next c
End Sub
Değerler önceden belirli değilse aşağıdaki gibi çözüm kullanabilirsin.
Sub loopthroughvalidationlist()
Dim inputRange As Range
Dim c As Range
Set inputRange = Evaluate(Range("D2").Validation.Formula1)
For Each c In inputRange
'... do something with c.Value
Next c
End Sub
- cakabo (08.11.16 14:35:47 ~ 14:36:55)
1