PDA

View Full Version : تابع جست و جو و جا به جایی



fazelm
یک شنبه 05 مهر 1388, 19:36 عصر
چه طور میشه کاری کرد که برنامه در یک تکست باکس بگرده و یه عبارتی رو پیدا کنه و به یه عبارت دیگه ای تغییر بده مثل کار replace all تو آفیس و .....

Hossis
یک شنبه 05 مهر 1388, 20:05 عصر
این طوری
سه جعبه متن بنام T وTT و T1 به همراه 2دكمه فرمان بنام Command1و co و روي فرم قرار دهيد.


Dim D As Long
Dim E As Long
Private Sub Co_Click()
Dim D, E, F As Long
Dim I As Single
T.SelStart = 0
F = Len(T.Text)
For I = 0 To F
D = T.SelStart + 2
E = InStr(D, T.Text, TT.Text)
If E = 0 Then GoTo Msg 'اگر رشته درون متن اصلي يافت نشد
T.SelStart = E - 1
T.SelLength = Len(TT.Text)
T.SelText = T1.Text
Next I
Exit Sub
Msg:
MsgBox "جايگزيني به پايان رسيد!", , "جايگزيني"

End Sub

Private Sub Co_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Co.Picture = Pi.Picture
End Sub
Private Sub Command1_Click()
D = T.SelStart + 2
E = InStr(D, T.Text, TT.Text)
If E = 0 Then GoTo Msg 'اگر رشته درون متن اصلي يافت نشد
T.SelStart = E - 1
T.SelLength = Len(TT.Text)
Exit Sub
Msg:
MsgBox "جستجو به پايان رسيد!", , "جستجو"
End Sub
Private Sub Form_Load()
'SendKeys "+^"
SendKeys "+%"
End Sub
Private Sub Form_Unload(Cancel As Integer)
SendKeys "^+"
End Sub
Private Sub T1_GotFocus()
SendKeys "{Home}+{End}"
End Sub
Private Sub TT_GotFocus()
SendKeys "{Home}+{End}"
End Sub

fazelm
یک شنبه 05 مهر 1388, 20:45 عصر
راه حل این نیست تو این راه حتی برخی اوقات سیستم هنگ میکنه

من یک راه دیگه رو رفتم ولی عملی نبود ، به این صورت :


textbox1.text.replace("old","new")

کسی نمیدونه مشکل از کجاست ؟؟؟

sari-1369
یک شنبه 05 مهر 1388, 22:31 عصر
به این صورت استفاده کن .



TextBox1.Text = Replace(TextBox1.Text, "old", "new")