Excel Hakkında Herşey

InputBox (VBA)

Kullanıcıdan bir değer girmesini istemek için Excel VBA'da InputBox işlevini kullanabilirsiniz.

Giriş Kutusu her zaman bir dize (string) döndürür fakat giriş kutusunun sonucunu bir hücreye yazarsanız, Excel, yanıtı otomatik olarak doğru türe dönüştürür. Örneğin, eğer bir sayı girerseniz Excel bunu hücrede bir sayı olarak tanıyacaktır.

Cevabı kodunuzda kullanmak istiyorsanız ve cevabın bir sayı olması gerekiyorsa, dönüştürme fonksiyonu kullanarak sonucu bir sayıya dönüştürmeniz gerekir. Örneğin Val işlevi kullanarak. Girişin bir sayı olup olmadığını doğrulamak için IsNumeric işlevini kullanabilirsiniz.

Çalışma sayfanıza bir komut düğmesi yerleştirin ve aşağıdaki kod satırlarını ekleyin:

1. İlk olarak, Variant türünde "giris" değişkenini tanımlayın.

Dim giris As Variant

Not: Burada Variant türünde bir değişken kullanıyoruz çünkü bir Variant değişkeni herhangi bir değer türünü tutabilir. Bu şekilde kullanıcı metin, sayı vb. girebilir.

2. Giriş kutusunu göstermek için aşağıdaki kod satırını ekleyin.

giris = InputBox("Herhangi bir değer girin")

giris = InputBox("Herhangi bir değer girin")

3. myValue değerini A1 hücresine yazın.

Range("A1").Value = giris

Kullanıcı 35 değerini girdiğinde ve Tamam düğmesini tıkladığında sonuç.

Kullanıcı 35 değerini girdiğinde ve Tamam düğmesini tıkladığında sonuç.

4. InputBox işlevinin daha fazla isteğe bağlı argümanı vardır. Aşağıdaki kod satırı, başlık çubuğunda görüntülenen ve varsayılan bir değere sahip olan bir giriş kutusu gösterir. Başka bir giriş sağlanmazsa varsayılan değer kullanılacaktır.

giris = InputBox("Herhangi bir değer girin", "Merhaba", 82)

giris = InputBox("Herhangi bir değer girin", "Merhaba", 82)

Kullanıcı herhangi bir değer girmeyip yalnızca Tamam düğmesini tıkladığında sonuç:

Kullanıcı yalnızca Tamam düğmesini tıkladığında sonuç:

Not: İmlecinizi Visual Basic Düzenleyicisi'ndeki InputBox'a getirin ve diğer isteğe bağlı bağımsız değişkenlerle ilgili yardım için F1'e tıklayın.

Tüm kodlar

Private Sub CommandButton1_Click()

Dim giris As Variant

giris = InputBox("Herhangi bir değer girin", "Merhaba", 82)
Range("A1").Value = giris

End Sub


Örnek:

Sub VBA_basit_InputBox()
    
Dim cevap As String
cevap = VBA.InputBox("Lütfen Giriş Yapın", "Giriş...")
If cevap = "" Then Exit Sub
'sayfaya uygun formatta geri yazma
Range("A2").Value = Excel.WorksheetFunction.Proper(cevap)
    
End Sub

Örnek


Örnek:

Sub VBA_InputBox()

'Her müşteri adı girildiğinde alt satıra ekler
Dim MusteriAdi As String
Dim SonrakiSatir As Long
MusteriAdi = VBA.InputBox("Lütfen Müşteri Adı girin", "Müşteri Girişi")
SonrakiSatir = Cells(Rows.Count, 1).End(xlUp).Row + 1
'sayfaya uygun formatta geri yazma
Range("A" & SonrakiSatir).Value = Excel.WorksheetFunction.Proper(MusteriAdi)

End Sub

Örnek

Örnek

Paylaş:

Ara

Son eklenen

Diğer Uygulamalarla Etkileşim

Bu bölümde VBA aracılığıyla Word, PowerPoint, Outlook, Adobe gibi uygulamalarla iletişim kurmayı öğreneceğiz. Excel’in dahili yöntem ve meto...