Seçilen Hücrenin Konumuna Göre Metin Kutusu Oluştur - Microsoft Excel


Bir hücreyi seçtikten sonra makroyu çalıştırdığımızda, sol üst köşesi hücrenin köşelerine denk gelecek şekilde yeni bir metin kutusu ekler.

Ekran Görüntüsü

Kod


Option Explicit

Sub SecilenHucreninKonumunaGoreMetinKutusuOlustur()
    Dim x   As Integer
    Dim gns As Integer
    Dim yks As Integer
    
    ActiveSheet.TextBoxes.Add( _
        Selection.Left, _
        Selection.Top, _
        0, _
        0).Select
    
    gns = 200
    yks = 150
    
    With Selection
        .Shadow = True
        .Width = gns
        .Height = yks
        .RoundedCorners = False
        .Interior.ColorIndex = 1
    End With
    
    Range(ActiveCell.Address).Select
End Sub

Kod (Açıklamalı)


Option Explicit

Sub SecilenHucreninKonumunaGoreMetinKutusuOlustur()

    '--------------------------------------------------
    'Değişkenler
    '--------------------------------------------------
    Dim x   As Integer
    Dim gns As Integer
    Dim yks As Integer
    
    '--------------------------------------------------
    'Hücremizi seçtik, yani Selection öğemiz hücre.
    'Metin kutusunu konum bilgilerini vererek ekleme
    've seçme işlemini yaptırıyoruz. Seçme işlemi
    'biçimlendirme işlemi için işimize yarayacak.
    '--------------------------------------------------
    ActiveSheet.TextBoxes.Add( _
        Selection.Left, _
        Selection.Top, _
        0, _
        0).Select
    
    '--------------------------------------------------
    'Olmasını istediğimiz genişlik ve yükseklik
    'değerlerini bir değişkene atadık.
    '--------------------------------------------------
    gns = 200
    yks = 150
    
    '--------------------------------------------------
    'Ekleme işleminin sonuna Select metodunu da
    'eklediğimizden artık Selection öğemiz hücre
    'değil, oluşturulmuş olan metin kutusu.
    'Şimdi bunu biçimlendirme işlemini yapıyoruz.
    '--------------------------------------------------
    With Selection
        .Shadow = True
        .Width = gns
        .Height = yks
        .RoundedCorners = False
        .Interior.ColorIndex = 1
    End With
    
    '--------------------------------------------------
    'Son olarak da tekrardan metin kutusunun sol köşe
    'olarak baz aldığı hücremizi tekrardan seçtiriyoruz.
    '--------------------------------------------------
    Range(ActiveCell.Address).Select
End Sub

Etiketler
microsoft excel açıklamalı içerik microsoft excel vba