(20/03/2020, 23:15)berduş yazdı: öncelikle değiştiğinde çalışmasını istediğiniz metin kutularının IM/Tag özelliğine degistiginde yazın sonrada form load /form yüklendiğindeolayına aşağıdaki kodu ekleyin
sonrada ilgili forma aşağıdaki fonksiyonu ekleyinDim ctl As Control
For Each ctl In Me
If ctl.Tag = "degistiginde" Then
ctl.OnChange = "=Degisti([" & ctl.Name & "])"
End If
Next ctl
Public Function Degisti(ByRef ctl As Control)
Dim ctl2 As Control
Me.Metin0 = ""
For Each ctl2 In Me
If ctl2.Tag = "degistiginde" Then
If ctl2.Name = ActiveControl.Name Then _
Me.Metin0 = Me.Metin0 & "|" & IIf(Len(Nz(Trim(ctl2.Text))) = 0, ".", Trim(ctl2.Text)) Else _
Me.Metin0 = Me.Metin0 & "|" & Nz(Trim(ctl2), ".")
End If
Next ctl2
Me.Metin0 = Mid(Me.Metin0, 2)
End Function
metin0 değerini isgecmis ile değiştirin
Yani alıntıdaki function koduna alttaki gibi gibi örnek olarak döngüsüz topluca yazılabilir.Yada array içine control adları alınıpta olabilir.Neyse kafaları karıştırmayayım sonuçta çözülmüş.
Me.isgecmis = Nz(Me.isyeri1.text, ".") & "|" & Nz(Me.iskolu1, ".") & "|" & Nz(Me.yapis1, ".") & "|" & Nz(Me.isgirtar1, ".") & "|" & Nz(Me.isciktar1, ".") _
& "|" & Nz(Me.isyeri2, ".") & "|" & Nz(Me.iskolu2, ".") & "|" & Nz(Me.yapis2, ".") & "|" & Nz(Me.isgirtar2, ".") & "|" & Nz(Me.isciktar2, ".") _
& "|" & Nz(Me.isyeri3, ".") & "|" & Nz(Me.iskolu3, ".") & "|" & Nz(Me.yapis3, ".") & "|" & Nz(Me.isgirtar3, ".") & "|" & Nz(Me.isciktar3, ".")