AccessTr.neT

Tam Versiyon: Double Sayısında Mod İle Tam Sayıları Bulmak
Şu anda arşiv modunu görüntülemektesiniz. Tam versiyonu görüntülemek için buraya tıklayınız.
iyi günler

Dim i As Integer
Dim d As Double
   
For i = 0 To 100
   d = i * 0.75
   If (d Mod X) Then MsgBox "tamsayı"
Next
 bu kodda d tam sayı olduğunda mesaj vermesi için "X" yerine ne yazmalıyım
if int(d)=d şeklinde deneyin?
5700 kayıt var güncellenirken progressbarda göstermek için

say = say + 1
deger = say * w / rst.RecordCount
yuzde = say * 100 / rst.RecordCount

If (Int(yuzde) = yuzde) Then
      Call RunProgressBar(Me.pb_item, deger)
      Me.pb_lbl.Caption = "Veriler Güncelleniyor... % " & Int(yuzde)
End If
sizin dediğiniz gibi yazdım ama hiç tam  sayı bulamadığı için if içine giremedi
nasıl bir mantık kurmam lazım

yani hem label üzerinde tam sayı göstereceğim
hemde progresbar titreyip durmasın diye sadece tam sayılarda 
Call RunProgressBar(Me.pb_item, deger
çalışacak

hiç tam sayı elde edemese bile progress bar bitene kadar sadece 100 kez güncellensin ve %1, %2.... diye göstersin
kodun mantığını söyleyeyim Int() sayıyı aşağı yuvarlar yani 2.999999999999999 bile olsa onu 2 yapar (2.9999999999999999 fazladan 9 eklediğimizde 3 yapıyor ) 0.75 in katları göz önüne alındığında sonucun doğru olması gerek. 2 defa denedim 1-100 bin arasını 2sinde de sonuç doğru çıktı
ama if içine girmeli yani benim double sayım 36,568 iken bunu if içinde en az bir kez kullanmalı
yani 36 tam sayısı hiç olmasa bile
sayın accessman ilk mesajınızdaki sorunun cevabı int()dir sorunuzu en baştan yanlış sormuşsanız yada açıklamanız eksikse yapabileceğim bir şey yok.