Butonla TextBox Ekle Sil

cems

Altın Üye
Katılım
2 Eylül 2005
Mesajlar
2,568
Excel Vers. ve Dili
office 2010 tr 32bit
Altın Üyelik Bitiş Tarihi
13-06-2029
Dosyanız , ekteki fotoda görüleceği gibi sakıncalı olarak sistem tarafından engelleniyor. Nedeni virüs değil ancak, ofis programında çok düşük versiyonlar ( .xls ) daha yüksek versiyonlarda açılınca engel yiyor.

Öneri : Textbox oluştur sil yerine properties' indeki visible false true özelliğini kullanın . Yani koşul varsa görünür , yoksa görünmez olsun.
 

Ekli dosyalar

halit3

Uzman
Uzman
Katılım
18 Ocak 2008
Mesajlar
12,852
Excel Vers. ve Dili
2003 excell türkçe
ve
2007 excell türkçe
Dosyanızı indirirken vürüs uyarısı veriyor.

Userformunuzdaki label nesnesini silin ve bütün kodları da silin bu kodları ekleyin.

Kod:
Private Sub CommandButton1_Click()
Dim i As Integer
With Me.Controls
i = Me.Controls.Count - 1
.Add "Forms.TextBox.1" ' Form üzerinde TextBox oluşturur
.Item("TextBox" & i).Top = .Item("TextBox" & i - 1).Top + 20 ' TextBox yukarı yanaşık yerini belirler
.Item("TextBox" & i).Width = 100 ' TextBox uzunluğu
.Item("TextBox" & i).SelectionMargin = False ' Baştaki marj boşluğunu alır
End With
End Sub

Private Sub CommandButton2_Click()
Dim Kontrol As Control
Dim say As Integer
say = 0
For Each Kontrol In Me.Controls
If TypeName(Kontrol) = "TextBox" Then
If Mid(Kontrol.Name, 1, 7) = "TextBox" Then
yer = Kontrol.Name
say = say + 1
End If
End If
Next
If say > 1 Then
Me.Controls.Remove yer '(Controls("TextBox" & i).Text)
End If
'i = Me.Controls.Count - 3
'Me.Controls.Remove (Controls("TextBox" & i).Text)
End Sub

Private Sub UserForm_Initialize()
Dim i As Integer
With Me.Controls

For i = 1 To 1
.Add "Forms.TextBox.1" ' Form üzerinde TextBox oluşturur
.Item("TextBox" & i).Top = a ' TextBox yukarı yanaşık yerini belirler
.Item("TextBox" & i).Width = 100 ' TextBox uzunluğu
.Item("TextBox" & i).SelectionMargin = False ' Baştaki marj boşluğunu alır
a = a + 20
Next i
End With
i = Empty
End Sub
 

AdemCan

Altın Üye
Destek Ekibi
Katılım
1 Eylül 2008
Mesajlar
1,386
Excel Vers. ve Dili
2019 TR
Merhabalar;
www.excelvba.net sitesinde konu ile ilgili paylaşım yapılmış önceden.
Tarkan Bey'in paylaşımından Textboxlar'ı silen kodu sizin çalışmanızda denedim, tek tek değilde tüm Textboxlar'ı siliyor. Yani tek tek silmesi için çeviremedim. :)
Kod:
Private Sub CommandButton2_Click()
With Me.Controls
Label1.Caption = 0
For Each textbox_sil In Me.Controls
If TypeName(textbox_sil) = "TextBox" Then ' Eğer nesne bir TextBox ise
textbox_ismi = textbox_sil.Name ' Değişkene TextBox adını ata
.Remove textbox_ismi ' TextBox adına göre nesneyi form üzerinden sil
End If
Next textbox_sil
End With
End Sub
İlgili konu: Komut ile textbox eklemek.

Not: Sn. halit3 ile aynı dakikada göndermişiz :) bu sebeple onun paylaşımını sonradan gördüm, kusura bakmayın.
 
Son düzenleme:

askm

Destek Ekibi
Destek Ekibi
Katılım
4 Haziran 2005
Mesajlar
2,745
Excel Vers. ve Dili
2010-2016
Kod:
Private Sub CommandButton2_Click()

With Me.Controls
For Each textbox_sil In Me.Controls
If TypeName(textbox_sil) = "TextBox" Then
    If Mid(textbox_sil.Name, 8, Len(textbox_sil.Name)) = Label1.Caption Then
        textbox_ismi = textbox_sil.Name
        .Remove textbox_ismi
        Label1.Caption = Label1.Caption - 1
    End If
End If
Next textbox_sil
End With
End Sub
 
Katılım
20 Temmuz 2006
Mesajlar
171
Excel Vers. ve Dili
Office 2016 Tr
Halit beyin verdiği kodlar tam olarak işimi gördü. İlgilenen tüm üstadlara teşekkür ederim.
 
Üst