ورود

View Full Version : سوال: وارد کردن اکسل به اکسس به عنوان یک جدول



saeed1234n
دوشنبه 03 تیر 1392, 00:43 صبح
با سلام
دوستان عزیز چطور می توان
با کلیک بر دکمه ای در اکسس
یک فایل اکسل را بعنوان یک جدول وارد اکسس کرد .
با تشکر از همگی شما خوبان :تشویق:

alirezabahrami
دوشنبه 03 تیر 1392, 17:02 عصر
با سلام
دوستان عزیز چطور می توان
با کلیک بر دکمه ای در اکسس
یک فایل اکسل را بعنوان یک جدول وارد اکسس کرد .
با تشکر از همگی شما خوبان :تشویق:
سلام
درنمونه ضمیمه از طریق کمند باتن اول فایل اکسل را انتخاب و از طریق کمند باتن دریافت فایل آن را به داخل برنامه ایمپورت کن!
از آنجائیکه فرم فوق مربوط به یکی از برنامه های بنده میباشد قسمت های اضافی را حذف کرده ام و فقط قسمت انتخاب و دریافت فایل که به درد شما میخورد را انتخاب نمودم به همین علت شاید در خلال عملیات با خطائی مواجه شوید که در این صورت اعلام کن تا انشاءالله برطرف شود.
موفق باشید

saeed1234n
دوشنبه 03 تیر 1392, 19:07 عصر
با سلام
ضمن تشکر از عنایت و بذل توجه جناب استاد بهرامی :
جناب استاد هیچ کدام از کامند باتن ها عمل نمی کرد :افسرده:
هضم کدهای وارد شده نیز برای ما تازه واردها بسیار سخت و مشکل است :متعجب:
اگر محبت بفرمایید و مثل همیشه حوصله بفرمایید بسیار ممنون میشوم :خجالت:
اگر جسارت نباشد می خواهم سوالاتم را یک به یک جواب بگیرم :خجالت:
بنده یک نمونه فایل اکسل و یک نمونه فایل اکسس بهمراه یک کامند باتن در فرم اکسس قرار دادم
بنده می خواهم با کلیک بر روی کامند باتن ‏‏‏‏‏-------- ‏ٌ‎ُُفایل اکسل بدرون برنامه اکسس ما وارد شده و به عنوان یک جدول جدید ایجاد شود.
باز هم از بذل توجه شما اساتید گرانقدر س‍پاسگذارم .
106117
106118

alirezabahrami
دوشنبه 03 تیر 1392, 21:33 عصر
با سلام
ضمن تشکر از عنایت و بذل توجه جناب استاد بهرامی :
جناب استاد هیچ کدام از کامند باتن ها عمل نمی کرد :افسرده:
هضم کدهای وارد شده نیز برای ما تازه واردها بسیار سخت و مشکل است :متعجب:
اگر محبت بفرمایید و مثل همیشه حوصله بفرمایید بسیار ممنون میشوم :خجالت:
اگر جسارت نباشد می خواهم سوالاتم را یک به یک جواب بگیرم :خجالت:
بنده یک نمونه فایل اکسل و یک نمونه فایل اکسس بهمراه یک کامند باتن در فرم اکسس قرار دادم
بنده می خواهم با کلیک بر روی کامند باتن ‏‏‏‏‏-------- ‏ٌ‎ُُفایل اکسل بدرون برنامه اکسس ما وارد شده و به عنوان یک جدول جدید ایجاد شود.
باز هم از بذل توجه شما اساتید گرانقدر س‍پاسگذارم .
106117
106118
سلام
کد زیر را در رویداد کلیک کمند باتن فایل خود وارد کن!


Dim strPath As String
Dim NameExcelfile As String
strPath = Application.CurrentProject.Path & "\Book1.xlsx"
NameExcelfile = Right$(strPath, InStr(1, StrReverse(strPath), "\") - 1)
If Len(Dir(NameExcelfile)) > 0 Then
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel12, "table1", strPath, True
MsgBox "!عمليات دريافت فايل اکسل با موفقيت انجام شد", vbOKOnly + vbInformation, "!توجه"
Else
MsgBox "!مسير يانام فايل اکسل معتبر نمي باشد", vbOKOnly + vbInformation, "!توجه"
End If


موفق باشید

saeed1234n
پنج شنبه 06 تیر 1392, 10:33 صبح
با سلام
ضمن تشکر از محبت های صمیمانه شما خوبان :تشویق: :لبخندساده: :تشویق:
جناب استاد بهرامی :
در صورت وجود داشتن جدول در اکسس با فراخوانی کد بالا فایل اکسل به انتهای جدول اضافه می شود
حال سوال این است که اگر بخواهیم با هر بار فراخوانی کد بالا فایل اکسل جایگزی جدول موجود شود چکونه باید عمل نمود .:متفکر: :متفکر: :متفکر: :متفکر:

alirezabahrami
پنج شنبه 06 تیر 1392, 10:54 صبح
با سلام
ضمن تشکر از محبت های صمیمانه شما خوبان :تشویق: :لبخندساده: :تشویق:
جناب استاد بهرامی :
در صورت وجود داشتن جدول در اکسس با فراخوانی کد بالا فایل اکسل به انتهای جدول اضافه می شود
حال سوال این است که اگر بخواهیم با هر بار فراخوانی کد بالا فایل اکسل جایگزی جدول موجود شود چکونه باید عمل نمود .:متفکر: :متفکر: :متفکر: :متفکر:

سلام
باید قبل از فراخوانی یا ایمپورت کردن فایل اکسل ، از طریق اجرای یک حلقه شرطی چک شود که اگر جدولی به نام جدول فایل اکسل وجود دارد حذف و سپس عملیات ایمپورت انجام شود.
برای انجام اینکار قبل از کدهای قبلی کد زیر را وارد کن!


Dim tdf As TableDef
Set db = CurrentDb()
For Each tdf In db.TableDefs
If tdf.Name = "table1" Then
DoCmd.DeleteObject acTable, tdf.Name
End If
Next


موفق باشید

saeed1234n
پنج شنبه 06 تیر 1392, 15:28 عصر
با سلام
جناب استاد :
به هنگام ورود اکسل به اکسس ‏ ردیف اول که عناوین ستون ها میباشد در اکسس جزود داده های جدول جدید قرار میگیرد
چه کدی بنویسیم که ردیف اول اکسل به عنوان سر ستونها در جدول قرار گیرند ؟:متفکر::متفکر::متفکر:
با تشکر فراوان

abas1388
پنج شنبه 06 تیر 1392, 17:05 عصر
با سلام
جناب استاد :
به هنگام ورود اکسل به اکسس ‏ ردیف اول که عناوین ستون ها میباشد در اکسس جزود داده های جدول جدید قرار میگیرد
چه کدی بنویسیم که ردیف اول اکسل به عنوان سر ستونها در جدول قرار گیرند ؟:متفکر::متفکر::متفکر:
با تشکر فراوان
سلام
جالبه ! من همین برنامه شما در کامپیوتر خودم اجرا می کنم و این اتفاقی که شما اشاره کرده اید نمی افتد .ضمناً اکسس سیستم من 2007 است.
تصویر ضمیمه را ملاحظه بفرمائید!
موفق باشید

saeed1234n
پنج شنبه 06 تیر 1392, 17:37 عصر
با سلام
دوست عزیز حق باشماست من فراموش کردم بودم که آرگومان پنجم (hasfieldname) را برابر true قراردهم
از شما و دیگر دوستان کمال تشکر را دارم .

G.hemati
جمعه 07 تیر 1392, 00:59 صبح
با سلام
دوستان در نسخه 2003 باید چه کدی استفاده کرد
ممنون میشم راهنمایی بفرمایین

salambeshoma
جمعه 21 تیر 1392, 12:04 عصر
سلام دوستان عزیزمن هر دو تا کد رو گذاشتم ولی فقط این پیغام رو میده "مسير يانام فايل اکسل معتبر نمي باشد"

saeed1234n
جمعه 21 تیر 1392, 12:30 عصر
با سلام
دوست عزیز بهتر است تنها کد زیر را وارد کنید :

DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel12, "table1", strPath, True

salambeshoma
جمعه 21 تیر 1392, 12:42 عصر
ممنون میشه کاملش رو بذاری

saeed1234n
جمعه 21 تیر 1392, 13:18 عصر
با سلام
دوست عزیز
به نمونه زیر نگاهی بیاندازید :
107084
107085

Dadvar
چهارشنبه 10 اردیبهشت 1393, 18:56 عصر
با سلام
دوست عزیز
به نمونه زیر نگاهی بیاندازید :
107084
107085

سلام
متاسفانه اجرا نشد

strongxxx
سه شنبه 30 دی 1393, 14:26 عصر
با عرض پوزش بابت بالا آوردن یک تاپیک قدیمی
کدهای فوق برای زمانی مناسب است که نام فایل اکسل را بدانیم (Book1)
حالا اگر نام فایل را ندانیم و بخواهیم از طریق Browse کردن در کامپیوتر فایل اکسل مورد نظر خود را بیابیم و سپس فایل اکسل را عنوان یک جدول در اکسس وارد کنیم چه کاری باید صورت پذیرد.

strongxxx
یک شنبه 05 بهمن 1393, 10:44 صبح
یک مرحله از کار پیش رفت (باز کردن دیالوگ باکس و انتخاب فایل)

نمونه برنامه آقای بهرامی هم برای ورژن 2003 کار می کرد ولی توی ورژن2010 64 بیتی پیغام خطا میداد
حالا چطور باید فایل اکسلی که انتخاب شده به اکسس وارد کنیم
برای دوستانی که ممکنه براشون این مشکل پیش بیاد کد صحیح open File Dialogرو برای آفیس 2010 64 بیتی قرار می دهم امیدوارم به کارتون بیاد


Private Sub Command2_Click() Call getFileName End Sub
Function getFileName() As String Dim f As ObjectSet f = Application.FileDialog(3)f.AllowMultiSelect = Truef.Show
MsgBox "file choosen = " & f.SelectedItems.CountEnd Function