VBA Inputbox Kullanımı

VBA`ya disaridan esnek bir icerik almak icin inputboz kullanabilirsiniz.. Yukaridaki resimde gordugunuz ornegimizde bir inputbox mevcut ve Input_Basligi seklinde bir baslik tasiyor; :::Inputbox::: seklinde yazdigim bir aciklama bolumu var, Uzerinde Tamam ve Iptal seklinde Iki buton var ve degerinizi gireceginiz bir edit mevcut.

Yukarida da soyledugtum gibi disaridan esnek veri almanizi saglar, surekli degisen bir veri girmek istiyorsaniz macronuz icerisine kullanabilirsiniz.. yada herhangi bir girise gore kistaslayarak girilen degere gore macronun baska islem yapmasini saglayabilirsiniz..

Yukaridaki ornegimizdeki Inputbox icin kodlari aktarayim..

VBA Kodlari

Public Sub Kullanici_Datasi()
Dim Kullanici_Datasi As String
Kullanici_Datasi = InputBox(“:::InputBox:::”, _
“Input_Basligi”, “Girmek Istediginiz Veriyi Giriniz..”)
If Kullanici_Datasi = “Girmek Istediginiz Veriyi Giriniz..” Or _
Kullanici_Datasi = “” Then
Exit Sub
End If
MsgBox “Kullanici_Datasi adli girisiniz :” & Kullanici_Datasi
End Sub

Yazar: mmustafaaslan

2004 yilindan itibaren ozel bir sirketin finans departmaninda calismaktadir. Kendini excel, visual basic kullaniminda gelistirmis olan yazarimiz; Meslegi geregi SAP konusunda ileri derecede bilgilidir.

“VBA Inputbox Kullanımı” için 2 yorum

  1. Merhaba,

    Bir excel tablom var. Sayfa1 in F sütununa yalnızca iki değer girilebilir. X yada Y.
    Örneğin F5 hücresine X girildiği anda, F2 ve F4 deki bilgileri Sayfa 2 ye atan bir makro çalıştırıyorum. Şöyle bir şey yapmak istiyorum.
    F5 hücresine X girildiğinde bir de inputbox çıksın. Buraya açıklama yazılsın. Yazılan açıklamalar yine Sayfa 2 deki 5.satıra eklensin.
    Aynı şekilde F6 için tekrar X girilirse tekrar inputbox çıksın. Farklı bir açıklama gireyim. Bu sefer sayfa 2 deki 6. satıra eklensin.
    yardımcı olabilir misiniz?

    1. Merhaba Derya,

      Private Sub Worksheet_Change(ByVal Target As Range)
      If Intersect(Target, [F:F]) Is Nothing Then Exit Sub
      Cancel = True
      Select Case Target.Column
      Case 6
      If Target.Value <> “X” Then Exit Sub

      Dim Kullanici_Datasi As String

      Kullanici_Datasi = InputBox(“:::InputBox:::”, _
      “Input_Basligi”, “Girmek Istediginiz Veriyi Giriniz..”)

      If Kullanici_Datasi = “Girmek Istediginiz Veriyi Giriniz..” Or _
      Kullanici_Datasi = “” Then
      Exit Sub
      End If
      Worksheets(“sheet2”).Cells(Target.Row, “F”).Value = Kullanici_Datasi
      End Select
      End Sub

      Kodu yukaridaki sekilde duzenleyip, ilgili sayfa1’in degisim olayina uygularasniz istediginize ulasabilirsiniz.

      iyi calismalar,
      Mustafa ASLAN

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir


3 + 8 =