تو این بخش میخوام نکاتی رو که خودم روز مره و هنگام برنامه نویسی بهشون برخورد میکنم رو بنویسم
این بخش از آموزش اصلی سایت جداست
تغییر شکل آیکن ماوس
برای تغییر شکل آیکن ماوس از این دستور استفاده می شود:
Screen.MousePointer = 0
تغییر به شکل ساعت شنی
Screen.MousePointer = 11
--------------------------------------------------------------------------------------
.
فارسی کردن کیبرد در هنگام ورود اطلاعات
فکر می کنم با کمک این تابع API خواسته دوستمون برآورده بشه . البته اینطور که من متوجه شدم ایشون در نظر دارن که کاربر کلاً با زبان فارسی ثبت اطلاعات انجام بده .
این کد رو به رخداد On Open فرم استارت آپ برنامه اضافه کنید بنابراین وقتی برنامه باز بشه زبان سیستم شما به فارسی تبدیل میشه و در خلال کار با برنامه اگر زبان دستی تغییر داده نشه تا انتها فارسی باقی خواهد بود حتی در زمان ورود داده درخواستی از سمت Query .
Private Declare Function ActivateKeyboardLayout Lib "user32" (ByVal HKL As Long, ByVal flags As Long) As Long
Private Sub Form_Load()
Call ActivateKeyboardLayout(1, 1)
End Sub
-------------------------------------------------------------------------------------
غیر فعال کردن پیغام های خطا یا آپدیت کوئری
DoCmd.SetWarnings False...DoCmd.SetWarnings True------------------------------------------------------------------------------------خودکار پر شدن ادامه کمبو باکس
کد:
comboBox1.AutoCompleteSource = AutoCompleteSource.ListItems;
comboBox1.AutoCompleteMode = AutoCompleteMode.Append;
------------------------------------------------------------------------------------
جهت دادن خروجی اکسل :
با دو دستور می توانید این کار را انجام بدهید.
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "TableName", "C:\Eee.xls"
DoCmd.OutputTo acOutputTable, "ObjectName", acFormatXLS, "C:\EEEEE.xls"
روش دوم بهتره ، چون می تونید هم کووری و هم جدول و هم ریپورت و غیره ارسال کنید
برای اطلاعات بیشتر کلمه Output را در قسمت برنامه نویسی انتخاب کنید و دکمه F1 را بزنید تا Help مربوط به همه موارد را ببینید.
در صورتی که مسیر داده نشود ، خود برنامه از شما سوال خواهد کرد.
این مثال در مورد خروجی یک گزارش است:
Private Sub Command37_Click()
On Error GoTo Err_Command37_Click
Dim stDocName As String
stDocName = "rpt_Wage"
DoCmd.OutputTo acReport, stDocName, acFormatXLS
Exit_Command37_Click:
Exit Sub
Err_Command37_Click:
MsgBox Err.De******ion
Resume Exit_Command37_Click
End Sub
در مثال زیر خروجی از یک جدول را بررسی کرده ایم:
Private Sub Command37_Click()
On Error GoTo Err_Command37_Click
Dim stDocName As String
stDocName = "tbl__LCSS_Part"
DoCmd.OutputTo acOutputTable, stDocName, acFormatXLS
Exit_Command37_Click:
Exit Sub
Err_Command37_Click:
MsgBox Err.De******ion
Resume Exit_Command37_Click
End Sub
-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-نکات روزانه و کوچک
اگر در لیست باکس اطلاعات خالی باشد ، موقع تبدیل به تکست باکس مقدار نول را میدهد.
اگر مقدار عددی روی Double تنظیم نشود ، آنگاه مقادیر اعشاری را ذخیره نمیکند.
این بخش از آموزش اصلی سایت جداست
تغییر شکل آیکن ماوس
برای تغییر شکل آیکن ماوس از این دستور استفاده می شود:
Screen.MousePointer = 0
تغییر به شکل ساعت شنی
Screen.MousePointer = 11
Setting | De******ion | |
0 | (Default) The shape is determined by Microsoft Access | حالت عادی |
1 | Normal Select (Arrow) | |
3 | Text Select (I-Beam) | |
7 | Vertical Resize (Size N, S) | |
9 | Horizontal Resize (Size E, W) | |
11 | Busy (Hourglass) | ساعت شنی |
.
فارسی کردن کیبرد در هنگام ورود اطلاعات
فکر می کنم با کمک این تابع API خواسته دوستمون برآورده بشه . البته اینطور که من متوجه شدم ایشون در نظر دارن که کاربر کلاً با زبان فارسی ثبت اطلاعات انجام بده .
این کد رو به رخداد On Open فرم استارت آپ برنامه اضافه کنید بنابراین وقتی برنامه باز بشه زبان سیستم شما به فارسی تبدیل میشه و در خلال کار با برنامه اگر زبان دستی تغییر داده نشه تا انتها فارسی باقی خواهد بود حتی در زمان ورود داده درخواستی از سمت Query .
Private Declare Function ActivateKeyboardLayout Lib "user32" (ByVal HKL As Long, ByVal flags As Long) As Long
Private Sub Form_Load()
Call ActivateKeyboardLayout(1, 1)
End Sub
-------------------------------------------------------------------------------------
غیر فعال کردن پیغام های خطا یا آپدیت کوئری
DoCmd.SetWarnings False...DoCmd.SetWarnings True------------------------------------------------------------------------------------خودکار پر شدن ادامه کمبو باکس
من یک کمبو باکس رو به یه جدول وصل کردم و می خواهم ببینم می توانم این کمبو رو به گونه ای تغییر دهم که با وارد کردن ابتدای یک آیتم بصورت اتومات بقیه موارد پر شود سپاسگزارم |
comboBox1.AutoCompleteSource = AutoCompleteSource.ListItems;
comboBox1.AutoCompleteMode = AutoCompleteMode.Append;
------------------------------------------------------------------------------------
جهت دادن خروجی اکسل :
با دو دستور می توانید این کار را انجام بدهید.
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "TableName", "C:\Eee.xls"
DoCmd.OutputTo acOutputTable, "ObjectName", acFormatXLS, "C:\EEEEE.xls"
روش دوم بهتره ، چون می تونید هم کووری و هم جدول و هم ریپورت و غیره ارسال کنید
برای اطلاعات بیشتر کلمه Output را در قسمت برنامه نویسی انتخاب کنید و دکمه F1 را بزنید تا Help مربوط به همه موارد را ببینید.
در صورتی که مسیر داده نشود ، خود برنامه از شما سوال خواهد کرد.
این مثال در مورد خروجی یک گزارش است:
Private Sub Command37_Click()
On Error GoTo Err_Command37_Click
Dim stDocName As String
stDocName = "rpt_Wage"
DoCmd.OutputTo acReport, stDocName, acFormatXLS
Exit_Command37_Click:
Exit Sub
Err_Command37_Click:
MsgBox Err.De******ion
Resume Exit_Command37_Click
End Sub
در مثال زیر خروجی از یک جدول را بررسی کرده ایم:
Private Sub Command37_Click()
On Error GoTo Err_Command37_Click
Dim stDocName As String
stDocName = "tbl__LCSS_Part"
DoCmd.OutputTo acOutputTable, stDocName, acFormatXLS
Exit_Command37_Click:
Exit Sub
Err_Command37_Click:
MsgBox Err.De******ion
Resume Exit_Command37_Click
End Sub
-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-نکات روزانه و کوچک
اگر در لیست باکس اطلاعات خالی باشد ، موقع تبدیل به تکست باکس مقدار نول را میدهد.
اگر مقدار عددی روی Double تنظیم نشود ، آنگاه مقادیر اعشاری را ذخیره نمیکند.