• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Userform Sistem Renk Kodlarını Öğrenmek

Katılım
5 Ocak 2009
Mesajlar
1,586
Excel Vers. ve Dili
2003 Türkçe
Selam,

Bir UserForm'un BackColor'unu sistem renklerinden seçiyorum. Ancak, bu renk sistem renklerinden alındığı için PC'den PC'ye değişiyor. Örneğin ekteki resimde açık mavi rengi userform'un backcolor olarak ayarlıyorum. Başka bilgisayardan userformu açınca, gri oluyor.
Beğendiğim herhangi bir sistem rengini tüm PC'lerde aynı olması için, deneme yanılma yolu ile en yakın rengi bulmaya çalışıyorum. Bunu başaramıyorum.

Kod:
renk= UserForm1.BackColor
denedim olmadı. bulunan renk kodu diğer PC'lerde de aynı çıkıyor.

O anki kullanılan sistem renginin asıl renk kodunu nasıl öğrenebilirim?

Yardımcı olabilirseniz çok sevinirim.
İyi çalışmalar.
 

Ekli dosyalar

  • sistem_renkleri.JPG
    sistem_renkleri.JPG
    29.7 KB · Görüntüleme: 23
şu çözüm üretir mi?

Kod:
UserForm.BackColor = vbBlue
 
dün, bir soru üzerine, biraz renkler konusunda çalışmıştım.

şöyle bir seçenek te olabilir.

kullanılmayan bir hücrenin dolgu rengini dilediğinizi bir renk olarak seçtikten sonra;

Kod:
Private Sub UserForm_Initialize()

Me.BackColor = Sheets("Sheet1").Range("IV1").Interior.Color

End Sub
 
dün, bir soru üzerine, biraz renkler konusunda çalışmıştım.

şöyle bir seçenek te olabilir.

kullanılmayan bir hücrenin dolgu rengini dilediğinizi bir renk olarak seçtikten sonra;

Kod:
Private Sub UserForm_Initialize()

Me.BackColor = Sheets("Sheet1").Range("IV1").Interior.Color

End Sub

Selam Mancubus,
ilginize çok teşekkür ederim. ancak, istediğim bu değil. Sorum gayet açık. Sistem renklerinin, asıl renk kodunu öğrenmek istiyorum.
 
Merhabalar,

Windows, kendi sistem renklerini ayrı işaretler.

VBA'da herbir nesnenin ilgili özelliği için açılan renk paletinde iki tab görürsünüz.

Biri "Palette", diğeri de System adıyla geçer.

Dikkatli bir kullanıcı; "System" tabındaki renk değerlerinin &H80******, "Palette" tabındaki renk değerlerinin ise &H00****** ile başladığını görecektir.

"&H80" ile işaretlenmiş ve HexaDecimal (16'lık) olarak verilen bu rakamların onluk sistemde negatif değerlere karşılık geldiği görülür. Diğerleri ise pozitif değerlerdir.

Siz, "System" renklerinden herhangi birinin Long veya RGB olarak ifadesini istiyorsanız,

Bunun için;

  • OleTranslateColor
  • GetSysColor

API fonksiyonlarını kullanabilirsiniz. Nette birçok örnek bulunmaktadır. İnceleyiniz. Bir sonuç elde edemezseniz, yardımcı olmaya çalışırız.
 
Merhabalar,
--------------
Siz, "System" renklerinden herhangi birinin Long veya RGB olarak ifadesini istiyorsanız,

Bunun için;

  • OleTranslateColor
  • GetSysColor
----------------

Selam,
Sayın Ferhat Pazarçevirdi Hocam,
İlginiz ve açıklamalarınız için çok teşekkür ederim. Dediğinizi yapacağım. Fakat ben isteğimi tam anlatabildim mi? bilmiyorum. Biraz açıklayayım;
Bir userformun BackColor'unu Sytem'den HighLight adlı rengi seçtim. rengin kodu: &H8000000D& görünüyor.
Bu renk, benim PC'imde (daha doğrusu benim Excelim'de veya Excel Versiyonumda Mavi rengi diyebileceğimiz bir renk olarak görünüyor.
Daha sonra aynı userformu başka PC'lerde veya başka Excel versiyonlarında açtığımda ise koyu bir renk ile karşılaşıyorum. koyu gri olan rengin kodu yine aynı yani: &H8000000D&
Bunun normal, olağan birşey olduğunu anlayabiliyorum. Ancak, çok beğendiğim bu rengi her PC'de ve her Excel versiyonunda aynı görünmesini sağlamak için,

bu rengin tam kodunu öğrenip, yine Userformun Backcolor'una bu safer "Palettte"den girmek istiyorum.
Mesela deneme yanılma ile yaklaşık bir &H00FC7441& gibi bir değer buldum. Ancak, birebir aynı tonun kodunu çeşitli metotlar ile öğrenebilir miyiz?

Sorum bu şekildedir.

İyi çalışmalar
 
Evet, ben de tam olarak bunu anlamıştım.


.
 
Geri
Üst