PDA

View Full Version : خواندن رکوردهای فایل excel



mahboob
سه شنبه 23 خرداد 1385, 06:41 صبح
با سلام
من میخواهم رکوردهای یک فیلد در فایل excel رو بخونم و در یکی از جداول بانکم که در sql ساختم ذخیره کنم لطفا منو راهنمایی کنید

asdfghjkl
سه شنبه 23 خرداد 1385, 07:40 صبح
میتوانید از Microsoft Jet برای اتصال به اکسل استفاده کنید (از ADO Connection استفاده کنید)

Kamyar.Kimiyabeigi
سه شنبه 23 خرداد 1385, 07:48 صبح
از داخل خود SQL میتونین یک Link Server به Excel بزنین و با اطلاعات داخل اون کار کنین مثال


sp_addlinkedserver N'Excel', N'Jet 4.0',
N'Microsoft.Jet.OLEDB.4.0',
N'c:\data\MySheet.xls', NULL, N'Excel 5.0'
GO
sp_addlinkedsrvlogin N'Excel', false, sa, N'ADMIN', NULL
GO

m-khorsandi
سه شنبه 23 خرداد 1385, 08:44 صبح
شما میتونید از ADO برای اینکار استفاده کنید به این صورت که:

از یک ADOConnection استفاده کنید و روی اون دوبار کلیک کنید
تا ویرایشگر ConnectionString باز بشه، روی دگمه Build کلیک کنید تا
فرم Data Link Properties باز بشه، از صفحه اول از بین Provider ها
Microsoft.Jet.OLEDB.4.0 رو انتخاب کنید و به صفحه بعد یعنی Connection برید
تو این صفحه آدرس فایل و نام فایل رو در جایی که مشخص هست تایپ کنید و به
صفحه آخر یا همون All برید و از بین ویژگیهای لیست شده Extended Properties رو
دوبار کلیک کنید و در فرمی که باز میشه در قسمت Value عبارت Excel 8.0 رو بنویسید.
فرمهای باز شده رو یکی یکی OK کنید .

ADOConnectionرو انتخاب کنید و ویژگی LoginPrompt رو False کنید تا دیگه ازتون Username و
Password رو نپرسه.

حالا یک ADOTable روی فرمتون بگذارید و اون رو به ADOConnection وصل کنید.

موقعیکه میخواهید لیست جداول (Tablename) رو ببینید تمام صفحات فایل Excel رو به همراه
یه علامت $ میاره که اگه به همین شکل هم شما انتخاب کنید و اون رو Open کنید با Error
مواجه میشید ، پس جدول رو انتخاب کنید و اون رو داخل براکت [] بگذارید.

حالا میتونید استفاده کنید.

mahboob
چهارشنبه 24 خرداد 1385, 08:15 صبح
شما میتونید از ADO برای اینکار استفاده کنید به این صورت که:

از یک ADOConnection استفاده کنید و روی اون دوبار کلیک کنید
تا ویرایشگر ConnectionString باز بشه، روی دگمه Build کلیک کنید تا
فرم Data Link Properties باز بشه، از صفحه اول از بین Provider ها
Microsoft.Jet.OLEDB.4.0 رو انتخاب کنید و به صفحه بعد یعنی Connection برید
تو این صفحه آدرس فایل و نام فایل رو در جایی که مشخص هست تایپ کنید و به
صفحه آخر یا همون All برید و از بین ویژگیهای لیست شده Extended Properties رو
دوبار کلیک کنید و در فرمی که باز میشه در قسمت Value عبارت Excel 8.0 رو بنویسید.
فرمهای باز شده رو یکی یکی OK کنید .

ADOConnectionرو انتخاب کنید و ویژگی LoginPrompt رو False کنید تا دیگه ازتون Username و
Password رو نپرسه.

حالا یک ADOTable روی فرمتون بگذارید و اون رو به ADOConnection وصل کنید.

موقعیکه میخواهید لیست جداول (Tablename) رو ببینید تمام صفحات فایل Excel رو به همراه
یه علامت $ میاره که اگه به همین شکل هم شما انتخاب کنید و اون رو Open کنید با Error
مواجه میشید ، پس جدول رو انتخاب کنید و اون رو داخل براکت [] بگذارید.

حالا میتونید استفاده کنید.
از راهنماییتون متشکر:لبخند:
اما مشکلی که دارم اینست که زمان اجرا برنامه این پیغام خطا می آید
a:\2.bmp

mahboob
پنج شنبه 25 خرداد 1385, 06:45 صبح
از داخل خود SQL میتونین یک Link Server به Excel بزنین و با اطلاعات داخل اون کار کنین مثال


sp_addlinkedserver N'Excel', N'Jet 4.0',
N'Microsoft.Jet.OLEDB.4.0',
N'c:\data\MySheet.xls', NULL, N'Excel 5.0'
GO
sp_addlinkedsrvlogin N'Excel', false, sa, N'ADMIN', NULL
GO

با سلام میشه مراحل کار را کمی بیشتر توضیح بدید

mehdi_moosavi
سه شنبه 07 آذر 1385, 13:44 عصر
در مورد پیغام خطایی که ظاهر میشه کسی میتونه راهنمایی کنه؟

arshia_
سه شنبه 07 آذر 1385, 14:56 عصر
من فایل اکسس با آفیس 2003 و 2007 ساختم و خواستم از این روش استفاده کنم ولی خطا می ده دوتا خطا داره یکی موقع connect کردن ado connection که خطاش اینه:
Could not find installable ISAM
و خطای دیگه وقتی می خوایم نام جدول رو انتخاب کنیم
This table is not excepte


جناب خرسندی روش شما جواب داد و بدون مشکل متصل شد
علت اشکال قبلی این بود که آفیس 2007 فایلها رو با پسوند xls ذخیره نکرده بود و پسوند اونا Xlsx بود
تقریبا تمام موردا رو به صورت XML در قالب مدل قبل ذخیره می کنه
اما وقتی فایل رو با آفیس 2003 و 2000 ذخیره کردم به راحتی جواب داد و اتصال برقرار شد

shobair
سه شنبه 07 آذر 1385, 15:30 عصر
سلام
این کد رو دانلود کنید. برای باز کردن Excel file.

http://www.planet-source-code.com/vb/scripts/ShowCode.asp?txtCodeId=1346&lngWId=7

شبیر

mehdi_moosavi
چهارشنبه 08 آذر 1385, 09:01 صبح
بله درسته این کد کاملا جواب میده. لطفا بفرمائید آیا با این روش میشه به یک فایل DBF هم وصل شد ؟
روش کار به چه شکل هست؟
با تشکر

ali_abbasi22145
یک شنبه 15 دی 1387, 15:37 عصر
شما میتونید از ADO برای اینکار استفاده کنید به این صورت که:

از یک ADOConnection استفاده کنید و روی اون دوبار کلیک کنید
تا ویرایشگر ConnectionString باز بشه، روی دگمه Build کلیک کنید تا
فرم Data Link Properties باز بشه، از صفحه اول از بین Provider ها
Microsoft.Jet.OLEDB.4.0 رو انتخاب کنید و به صفحه بعد یعنی Connection برید
تو این صفحه آدرس فایل و نام فایل رو در جایی که مشخص هست تایپ کنید و به
صفحه آخر یا همون All برید و از بین ویژگیهای لیست شده Extended Properties رو
دوبار کلیک کنید و در فرمی که باز میشه در قسمت Value عبارت Excel 8.0 رو بنویسید.
فرمهای باز شده رو یکی یکی OK کنید .

ADOConnectionرو انتخاب کنید و ویژگی LoginPrompt رو False کنید تا دیگه ازتون Username و
Password رو نپرسه.

حالا یک ADOTable روی فرمتون بگذارید و اون رو به ADOConnection وصل کنید.

موقعیکه میخواهید لیست جداول (Tablename) رو ببینید تمام صفحات فایل Excel رو به همراه
یه علامت $ میاره که اگه به همین شکل هم شما انتخاب کنید و اون رو Open کنید با Error
مواجه میشید ، پس جدول رو انتخاب کنید و اون رو داخل براکت [] بگذارید.

حالا میتونید استفاده کنید.

درود و سپاس بي پايان
من تست كردم و خوب هم به بانك EXCEL وصل شد، حالا چطوري آن فايل EXCEL را به بانكم IMPORT كنم؟