Dogrulama

Katılım
10 Mayıs 2005
Mesajlar
72
İyi akşamlar!

Yapmak istediğim EK'te bulunan excel dosyasının A1 ile A20 hücrelerininde bulunan ve "doğrulama" komutuyla sadece a,b,c ve d harflerinden birisi olması gereken hücrelerin excel'i her açtığımda auto open macrosu sayesinde otomatik olarak yalnızca a harfinin görünmesini sağlamak.

Bu konuda yardımcı olacak arkadaşlara şimdiden teşekkür ederim.

Saygılarımla,
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Aşağıdaki kodu deneyin.

[vb:1:79e1a5ab84]Sub auto_open()
[a1:a20] = "a"
End Sub
[/vb:1:79e1a5ab84]
 
Katılım
10 Mayıs 2005
Mesajlar
72
Sayın leventm!

Ben yukarıdaki örneğimde, a hücresindeki a,b,c ve d harflerine göre b ve c sütunlarının değişik renklerde dolgusunun olmasını istemiştim. Bu yüzden vb'de Sayfa2(1) kısmına,


Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [a:a]) Is Nothing Then Exit Sub
adr = "b" & Target.Row & ":c" & Target.Row
Select Case Target
Case "a": Range(adr).Interior.ColorIndex = 36
Case "b": Range(adr).Interior.ColorIndex = 44
Case "c": Range(adr).Interior.ColorIndex = 15
Case "d": Range(adr).Interior.ColorIndex = 38
End Select
End Sub

yazdım. Ancak nedendir bilinmez excel dosyasını açtığımda Run-time error '13': Type mismatch hata mesajı vermektedir. Aslında benim esas amacım buu hata mesajı olmadan A1 ile A20 hücrelerinin otomatik olarak excel açıldığında "a" harfini alması.

Yardımcı olursanız çok sevinirim,

saygılarımla,
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Bu durumda kodu aşağıdaki gibi düzenlerseniz hata vermeyecektir.

[vb:1:ad6d6be944]Sub auto_open()
For a = 1 To 20
Range("a" & a) = "a"
Next
End Sub
[/vb:1:ad6d6be944]
 
Katılım
10 Mayıs 2005
Mesajlar
72
ellerinize sağlık sayın leventm!

keşke birde "userform her türlü ekranda gözüksün" başlıklı konudaki sorunumu çözerseniz size çok minnettar kalırım.

saygılarımla,
 
Üst