Bu dosya, bir UserForm üzerindeki metin alanını yazı editörüne dönüştüren bir VBA örneğidir. Editör, aktif hücredeki metni açar; kalın, italik, altı çizili gibi biçimlendirmeler uygulandıktan sonra sonucu aynı hücreye karakter bazında biçimli olarak yazar. Dosya makro içerir, açarken makroları etkinleştirmeniz gerekir.
Dosyanın içeriği
- List1: İçinde deneme amaçlı örnek metinler bulunan çalışma sayfası (A1:I17). Editörü açan btnShowRTB düğmesi bu sayfadadır.
- frmRTB: Editör penceresi. Biçimlendirme araç çubuğu, metin alanı ve metni gösteren, HTML kodunu gösteren, hücreye yapıştıran düğmeler bu formdadır.
- clsRichTextBox: Editörün ana sınıfı. Araç çubuğunu oluşturur, metin ve HTML okuma/yazma işlemlerini ve düzenlenebilirlik ayarını yönetir.
- clsRTBComboBox ve clsRTBButton: Yazı tipi, boyut gibi açılır liste seçimlerini ve düğme tıklamalarını ana sınıfa ileten yardımcı sınıflar.
Makrolar
- btnShowRTB_Click: List1 sayfasındaki düğmeye basılınca frmRTB formunu açar.
- UserForm_Initialize: Editör sınıfını başlatır, araç çubuğunu kurar ve aktif hücrenin metnini editöre yükler.
- ExecuteCommand: Araç çubuğundaki komutları editöre uygular. Renk seçimi için renk paleti açılır.
- Text ve HTMLText: Editördeki içeriği düz metin veya HTML olarak verir.
- btnPaste_Click: Editördeki HTML etiketlerini çözümler. Metni aktif hücreye yazar; yazı tipi adı, renk, boyut, kalın, italik, altı çizili, üstü çizili, üst simge ve alt simge ayarlarını ilgili karakter aralıklarına uygular. Yazı boyutu 1-7 arası HTML değerlerinden 7,5 ile 36 punto arasına çevrilir.
- Copy: Editör içeriğini panoya kopyalar.
Nasıl kullanılır
- Dosyayı açın ve makroları etkinleştirin.
- List1 sayfasında biçimlendirmek istediğiniz hücreyi seçin.
- Sayfadaki düğmeye basarak editör formunu açın; hücredeki metin forma yüklenir.
- Araç çubuğundan yazı tipi, boyut, renk ve stil ayarlarını uygulayın.
- Metni ve HTML kodunu görmek için ilgili düğmeleri, sonucu hücreye aktarmak için yapıştır düğmesini kullanın.