• DİKKAT

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

UserForm Üstünde Sayı Artırma/Azaltma

Katılım
28 Haziran 2007
Mesajlar
141
Excel Vers. ve Dili
microsoft office 2007 - ingilizce
Merhaba,

Ekteki userform'da bulunan iki adet textbox'ta biri tarih, diğeri seri no olmak üzere iki farklı formatta sayılar var. Bemim yapmak istediğim her iki textbox'un iki yanında bulunan +/- butonları ile içlerinde bulunan sayıları artırmak ve azaltmak. Daha açıklayacak olursam;

TextBox1'de bulunan tarihi (01.09.2011), sağ yanında bulunan "+" butonu ile birer gün artırmak istiyorum. Mesela; "+" butonuna bir kez tıklandığı zaman 02.09.2011, iki kez tıklandığı zaman 03.09.2011 tarihini elde etmek; "-" butonu ile de bunun tam tersini yapmak istiyorum.

TextBox2'de bulunan seri numarasının son iki hanesini (TR-001-00-01), "+" butonu ile birer değer artırmak istiyorum. Mesela; "+" butonuna bir kez tıklandığı zaman TR-001-00-02, iki kez tıklandığı zaman TR-001-00-03 değerini elde etmek; "-" butonu ile de bunun tam tersini yapmak istiyorum.

Nasıl yapabilirim?
 

Ekli dosyalar

Merhaba,

SpinButton1 kullanılmıştır. Kodları ve dosyayı inceleyiniz.

Kod:
Private Sub SpinButton1_SpinDown()
    Dim Tarih As Date
    Tarih = CDate(TextBox1.Value) - 1
    TextBox1.Value = Format(Tarih, "dd.mm.yyyy")
End Sub

Kod:
Private Sub SpinButton1_SpinUp()
    Dim Tarih As Date
    Tarih = CDate(TextBox1.Value) + 1
    TextBox1.Value = Format(Tarih, "dd.mm.yyyy")
End Sub

Kod:
Private Sub SpinButton2_SpinDown()
    Dim a
    Dim i As Integer
    
    a = Split(TextBox2.Value, "-")
    a(UBound(a)) = Val(a(UBound(a))) - 1
    For i = 0 To UBound(a)
        If i = 0 Then
            TextBox2.Value = a(i)
        Else
            TextBox2.Value = TextBox2.Value & "-" & Format(a(i), "0000")
        End If
    Next i
    
End Sub

Kod:
Private Sub SpinButton2_SpinUp()
    Dim a
    Dim i As Integer
    
    a = Split(TextBox2.Value, "-")
    a(UBound(a)) = Val(a(UBound(a))) + 1
    For i = 0 To UBound(a)
        If i = 0 Then
            TextBox2.Value = a(i)
        Else
            TextBox2.Value = TextBox2.Value & "-" & Format(a(i), "0000")
        End If
    Next i
End Sub

Kod:
Private Sub UserForm_Initialize()
    TextBox1 = Format(Date, "dd/mm/yyyy")
    TextBox2 = ThisWorkbook.Sheets("1").Range("A1")
End Sub
 

Ekli dosyalar

Çok teşekkür ederim, elinize sağlık.
 
Geri
Üst