ورود

View Full Version : سوال: کدی جهت auto Scroll



ahmansoori
سه شنبه 21 آبان 1392, 09:31 صبح
با سلام
من احتیاج به کدی دارم که در یک فاصله زمانی مشخص یک فرم که از نوع Continuous Forms و بیشتر از یک صفحه می باشد را به صفحات بعدی ببره تا انتهای فرم.
تغییر موقعیت نوار پیمایش
احتیاج فوری
SendKeys "{PGDN}"
از این فرمان هم استفاده کردم وقتی صفحه اکسس فعال درست کار می کنه ولی وقتی یک پنجره دیگه فعاله پنجره اون برنامه رو پائین میاره آیا راهی دیگه ای هست
ممنون

Abbas Amiri
سه شنبه 21 آبان 1392, 18:44 عصر
با سلام
من احتیاج به کدی دارم که در یک فاصله زمانی مشخص یک فرم که از نوع Continuous Forms و بیشتر از یک صفحه می باشد را به صفحات بعدی ببره تا انتهای فرم.
تغییر موقعیت نوار پیمایش
احتیاج فوری
SendKeys "{PGDN}"
از این فرمان هم استفاده کردم وقتی صفحه اکسس فعال درست کار می کنه ولی وقتی یک پنجره دیگه فعاله پنجره اون برنامه رو پائین میاره آیا راهی دیگه ای هست
ممنون

امتحان کنید کد زیر جواب می دهد؟

If Screen.ActiveForm.Name = Me.Name Then
SendKeys "{PGDN}"
End If

ahmansoori
چهارشنبه 22 آبان 1392, 08:31 صبح
امتحان کنید کد زیر جواب می دهد؟

If Screen.ActiveForm.Name = Me.Name Then
SendKeys "{PGDN}"
End If

سلام
فکر کنم با این کار وقتی پنجره اکتیو بشه این کار انجام می شه
من از دو مانیتور استفاده می کنم و میخوام او صفحه برای خودش در فاصله زمانی مشخص بالا و پائین بشه
و من در مانیتور اول به کار روز مره برسم
ممنون

Abbas Amiri
چهارشنبه 22 آبان 1392, 14:53 عصر
سلام
فکر کنم با این کار وقتی پنجره اکتیو بشه این کار انجام می شه
من از دو مانیتور استفاده می کنم و میخوام او صفحه برای خودش در فاصله زمانی مشخص بالا و پائین بشه
و من در مانیتور اول به کار روز مره برسم
ممنون

می توانید از کدهای زیر استفاده کنید. عدد 10 در خط 7 تعداد رکوردهایی است که در بار پیمایش میشوند . پس از رسیدن به انتهای صفحه ، دوباره از نوع شروع خواهد شد.

Private Sub Form_Timer()
On Error GoTo ErrH
Dim p As Integer, e As Integer
p = Me.Recordset.AbsolutePosition
e = Me.Recordset.RecordCount - 1
If p < e Then
DoCmd.GoToRecord acDataForm, Me.Name, acNext, 10
Else
DoCmd.GoToRecord acDataForm, Me.Name, acFirst
End If
Exit Sub
ErrH:
DoCmd.GoToRecord acDataForm, Me.Name, acLast
Resume Next
End Sub

alirezabahrami
چهارشنبه 22 آبان 1392, 19:11 عصر
می توانید از کدهای زیر استفاده کنید. عدد 10 در خط 7 تعداد رکوردهایی است که در بار پیمایش میشوند . پس از رسیدن به انتهای صفحه ، دوباره از نوع شروع خواهد شد.

Private Sub Form_Timer()
On Error GoTo ErrH
Dim p As Integer, e As Integer
p = Me.Recordset.AbsolutePosition
e = Me.Recordset.RecordCount - 1
If p < e Then
DoCmd.GoToRecord acDataForm, Me.Name, acNext, 10
Else
DoCmd.GoToRecord acDataForm, Me.Name, acFirst
End If
Exit Sub
ErrH:
DoCmd.GoToRecord acDataForm, Me.Name, acLast
Resume Next
End Sub

احسنت آقای امیری !