امتیاز موضوع:
  • 5 رأی - میانگین امتیازات: 3.2
  • 1
  • 2
  • 3
  • 4
  • 5
استفاده از Excel در وی بی 6
نویسنده پیام
Darg غایب
مدير بازنشسته
*****

ارسال‌ها: 894
موضوع‌ها: 40
تاریخ عضویت: تير ۱۳۸۴

تشکرها : 381
( 702 تشکر در 190 ارسال )
ارسال: #1
استفاده از Excel در وی بی 6
یه مدتیه که پست‌های زیادی در رابطه با چگونگی استفاده از برنامه Excel در زبان وی بی 6 عنوان شده, که باعث شلوغ شدن و سردر گمی مراجعین به فروم شده.
در اینجا من خیلی سریع مسئله رو براتون توضیح می‌دم تا دیگه درخواست‌های دوستان فقط به این تاپیک ارجاع داده بشه.
_____________________________________________________
برای شروع کار باید یک پروژه معمولی وی بی باز کنید و به بخش References پروژتون برید و بعد گزینه زیر رو انتخاب کنید:
Microsoft Excel n.0 Object Library

اون عدد n.0 که مشاده می‌کنید در واقع بستگی به این داره که شما از کدوم نسخه آفیس دارید روی ویندوزتون استفاده می‌کنید که مثلا چون من از آفیش 2007 استفاده می‌کنم عبارت زیر رو انتخاب کردم:
Microsoft Excel 12.0 Object Library

حالا وارد کد‌نویسی می‌شیم.
خوب ابتدا وی بی باید برنامه Excel رو باز کنه چون تمام کارهایی که ما انجام می‌دیم احتیاج به خود فایل اجرایی Excel.exe هست. برای این کار باید کد زیر رو بنویسید:
Dim mApplication As New Excel.Application

در واقع ما حالا یک شیء Application رو داریم که حکم همون فایل اجرایی Excel هست و مثل این می‌مونه که شما دستی خود برنامه Excel.exe رو باز کردید.
حالا این سوال رو از شما می‌پرسم که برای کار کردن در محیط اکسل بعد از باز کردن برنامه اکسل چه اتفاقی میافته؟
دقیقا بعد از باز کردن اکسل بلافاصله یک محیط کاری یا در واقع Workbook برای شما آماده است. اما در محیط برنامه‌نویسی شما باید خودتون هر تعداد Workbook که لازم دارید ایجاد کنید با فرمان زیر:
Dim mWorkbook As New Excel.Workbook

اما در این مرحله ما باید پیوندی بین mApplication که برنامه جاری کدمون هست با mWorkbook که محیط کاری کدمون هست ایجاد کنیم به ترتیب زیر:
Set mWorkbook = mApplication.Workbooks.Add

در کد بالا چه اتفاقی میافته:
یک Workbook به مجموعه Workbook های Application ما اضافه می‌شه و Workbook جدید در محل mWorkbook قرار می‌گیره.
خوب حالا میحط کاری هم آمادست اما در اینجا یعنی درون کد‌ها ما هنوز هیچ Sheet برای کار نداریم که باید اون رو هم ایجاد کنیم:
Dim mWorksheet As New Excel.Worksheet
Set mWorksheet = mWorkbook.Sheets.Add
mWorksheet.Name = "Test Sheet"

حالا همه چیز آمادست برای کار.
اگر می‌خواید یه سلول‌ها دسترسی داشته باشید از خصوصیت mWorksheet.Cellsاستفاده کنید.
در نهایت برای اینکه بتونید نتیجه کار رو ببینید باید فرمان زیر رو صادر کنید:
mApplication.Visible = True

و البته ما یک مجموعه کامل از خصوصیات و فرمان‌ها برای باز کردن, ذخیره, مقدار دهی و ... رو داریم که تا همین جای مطلب برای اینکه بتونید کار رو شروع کنید کفایت می‌کنه.
برنامه ضمیمه کد‌های همین مطلبه به صورت یک پروژه.
همین طور در لینک زیر بحث جالبی هست برای افزایش سرعت دسترسی به اکسل به وسیله وی بی 6 که اگر بخونیدش مفید خواهد بود.
http://forum.iranled.com/showthread.php?tid=4951


فایل‌(های) پیوست شده
.zip   BasicExcelVB6.zip (اندازه: 9.27 KB / تعداد دفعات دریافت: 1,403)
۱۱-آبان-۱۳۸۶, ۱۵:۰۶:۴۵
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : amin_vb, علي جباري, MT888, alaska, alih110, t3r!p3000, saeed_smco, PRO, javaweb, آقا فرهود, alimogmov
MT888 آفلاین
كاربر تک ستاره
*

ارسال‌ها: 44
موضوع‌ها: 7
تاریخ عضویت: مرداد ۱۳۸۷

تشکرها : 35
( 17 تشکر در 12 ارسال )
ارسال: #2
RE: استفاده از Excel در وی بی 6
سلام . فقط ی مشگلی هست .وقتی دیتارو به excel میفرستم فرمتشون بصورت پیشفرض General هست در صورتیکه میخوام Number باشه. مطمئنا با کدنویسی میشه حلش کرد که من بلد نیستم .دوستان لطفا راهنماییم کنید.
۲۸-آبان-۱۳۸۷, ۱۸:۰۹:۴۹
ارسال‌ها
پاسخ
تشکر شده توسط : alimogmov
King_of_Night آفلاین
كاربر تک ستاره
*

ارسال‌ها: 25
موضوع‌ها: 5
تاریخ عضویت: خرداد ۱۳۸۴

تشکرها : 0
( 13 تشکر در 8 ارسال )
ارسال: #3
RE: استفاده از Excel در وی بی 6
(۱۱-آبان-۱۳۸۶, ۱۵:۰۶:۴۵)Darg نوشته است: یه مدتیه که پست‌های زیادی در رابطه با چگونگی استفاده از برنامه Excel در زبان وی بی 6 عنوان شده, که باعث شلوغ شدن و سردر گمی مراجعین به فروم شده.
در اینجا من خیلی سریع مسئله رو براتون توضیح می‌دم تا دیگه درخواست‌های دوستان فقط به این تاپیک ارجاع داده بشه.
_____________________________________________________
برای شروع کار باید یک پروژه معمولی وی بی باز کنید و به بخش References پروژتون برید و بعد گزینه زیر رو انتخاب کنید:
Microsoft Excel n.0 Object Library

اون عدد n.0 که مشاده می‌کنید در واقع بستگی به این داره که شما از کدوم نسخه آفیس دارید روی ویندوزتون استفاده می‌کنید که مثلا چون من از آفیش 2007 استفاده می‌کنم عبارت زیر رو انتخاب کردم:
Microsoft Excel 12.0 Object Library

حالا وارد کد‌نویسی می‌شیم.
خوب ابتدا وی بی باید برنامه Excel رو باز کنه چون تمام کارهایی که ما انجام می‌دیم احتیاج به خود فایل اجرایی Excel.exe هست. برای این کار باید کد زیر رو بنویسید:
Dim mApplication As New Excel.Application

در واقع ما حالا یک شیء Application رو داریم که حکم همون فایل اجرایی Excel هست و مثل این می‌مونه که شما دستی خود برنامه Excel.exe رو باز کردید.
حالا این سوال رو از شما می‌پرسم که برای کار کردن در محیط اکسل بعد از باز کردن برنامه اکسل چه اتفاقی میافته؟
دقیقا بعد از باز کردن اکسل بلافاصله یک محیط کاری یا در واقع Workbook برای شما آماده است. اما در محیط برنامه‌نویسی شما باید خودتون هر تعداد Workbook که لازم دارید ایجاد کنید با فرمان زیر:
Dim mWorkbook As New Excel.Workbook

اما در این مرحله ما باید پیوندی بین mApplication که برنامه جاری کدمون هست با mWorkbook که محیط کاری کدمون هست ایجاد کنیم به ترتیب زیر:
Set mWorkbook = mApplication.Workbooks.Add

در کد بالا چه اتفاقی میافته:
یک Workbook به مجموعه Workbook های Application ما اضافه می‌شه و Workbook جدید در محل mWorkbook قرار می‌گیره.
خوب حالا میحط کاری هم آمادست اما در اینجا یعنی درون کد‌ها ما هنوز هیچ Sheet برای کار نداریم که باید اون رو هم ایجاد کنیم:
Dim mWorksheet As New Excel.Worksheet
Set mWorksheet = mWorkbook.Sheets.Add
mWorksheet.Name = "Test Sheet"

حالا همه چیز آمادست برای کار.
اگر می‌خواید یه سلول‌ها دسترسی داشته باشید از خصوصیت mWorksheet.Cellsاستفاده کنید.
در نهایت برای اینکه بتونید نتیجه کار رو ببینید باید فرمان زیر رو صادر کنید:
mApplication.Visible = True

و البته ما یک مجموعه کامل از خصوصیات و فرمان‌ها برای باز کردن, ذخیره, مقدار دهی و ... رو داریم که تا همین جای مطلب برای اینکه بتونید کار رو شروع کنید کفایت می‌کنه.
برنامه ضمیمه کد‌های همین مطلبه به صورت یک پروژه.
همین طور در لینک زیر بحث جالبی هست برای افزایش سرعت دسترسی به اکسل به وسیله وی بی 6 که اگر بخونیدش مفید خواهد بود.
http://forum.iranled.com/showthread.php?tid=4951

سلام دوست عزيز
فقط تنها مشكلي كه اين وسط هست اينه كه ممكن بعضي برنامه نويسان پس از اينكه مي خواند Sheet ‌رو ذخيره كنند با يك پيغام مواجه ميشند كه محتوياتش ابه اين شكله كه فايل تنظيمات اين Sheet‌موجود مي باشد كه توجه داشته باشيد قبلا اين رو دستي پاك كنيد تا با مشكل مواجه نشن.
درباره اون مسئله اي كه MT888 را جه به فرمت گفتند من يك نمونه دارم كه بسيار كامل و هيچ مشكلي هم نداره اگه وقت شد حتما مي زارم تا استفاده بشه.
Smile مخلص همه دوستان
۲۶-دى-۱۳۸۷, ۲۳:۰۹:۵۲
ارسال‌ها
پاسخ
تشکر شده توسط : alimogmov
mohsen0025 آفلاین
كاربر دو ستاره
**

ارسال‌ها: 96
موضوع‌ها: 8
تاریخ عضویت: فروردین ۱۳۸۸

تشکرها : 29
( 98 تشکر در 36 ارسال )
ارسال: #4
RE: استفاده از Excel در وی بی 6
سلام
با اين كد ميتونين فايل هاي excel رو تو mdb كپي كنين


فایل‌(های) پیوست شده
.zip   Excel to mdb.zip (اندازه: 115.85 KB / تعداد دفعات دریافت: 794)
۲۷-فروردین-۱۳۸۸, ۱۹:۵۹:۳۹
ارسال‌ها
پاسخ
تشکر شده توسط : alaska, MT888, alimogmov
MT888 آفلاین
كاربر تک ستاره
*

ارسال‌ها: 44
موضوع‌ها: 7
تاریخ عضویت: مرداد ۱۳۸۷

تشکرها : 35
( 17 تشکر در 12 ارسال )
ارسال: #5
RE: استفاده از Excel در وی بی 6
سلام
برای این تغییر فرمت هیچکی راهی به نظرش نمیرسه؟
۲۷-اردیبهشت-۱۳۸۸, ۱۲:۱۲:۰۰
ارسال‌ها
پاسخ
تشکر شده توسط : alimogmov
Darg غایب
مدير بازنشسته
*****

ارسال‌ها: 894
موضوع‌ها: 40
تاریخ عضویت: تير ۱۳۸۴

تشکرها : 381
( 702 تشکر در 190 ارسال )
ارسال: #6
RE: استفاده از Excel در وی بی 6
(۲۷-اردیبهشت-۱۳۸۸, ۱۲:۱۲:۰۰)MT888 نوشته است: سلام
برای این تغییر فرمت هیچکی راهی به نظرش نمیرسه؟
سلام می بخشید که دیر جواب می دم. من خیلی کم به این فروم سر می زنم

برای تغییر فرمت سلول از خصوصیت NumberFormat استفاده کنید مثلا برای اینکه سلول فرمت عددی با دو رقم عشار داشته باشه به شکل زیر می شه:

کد:
Worksheet.Cells(1, 1).NumberFormat = "0.00"

برای تایین فرمت جاری سلول هم از NumberFormatLocal استفاده می شه.
(آخرین ویرایش در این ارسال: ۲۸-اردیبهشت-۱۳۸۸, ۰۳:۴۸:۵۸، توسط Darg.)
۲۸-اردیبهشت-۱۳۸۸, ۰۳:۴۶:۵۵
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : MT888, alaska, alimogmov
MT888 آفلاین
كاربر تک ستاره
*

ارسال‌ها: 44
موضوع‌ها: 7
تاریخ عضویت: مرداد ۱۳۸۷

تشکرها : 35
( 17 تشکر در 12 ارسال )
ارسال: #7
RE: استفاده از Excel در وی بی 6
این لینک رو ببینید امیدوارم به دردتون بخوره
http://mediavb.persiangig.ir/DataBase/Le...n%2012.htm
۲۹-اردیبهشت-۱۳۸۸, ۱۴:۳۷:۱۴
ارسال‌ها
پاسخ
تشکر شده توسط : alaska, Darg, alimogmov
arashkhan آفلاین
كاربر تک ستاره
*

ارسال‌ها: 34
موضوع‌ها: 6
تاریخ عضویت: تير ۱۳۸۵

تشکرها : 1
( 3 تشکر در 3 ارسال )
ارسال: #8
RE: استفاده از Excel در وی بی 6
سلام ، من می خوام تو برنامم یک یا چند شیت شبیه به شیت های اکسل داشته باشم که کاربر بتونه آمارش رو تو اون بریزه آیا می تونم از خود اکسل اطلاعات رو بگیرم ؟ البته من بیشتر می خوام شیت ها رو درون فورم برنامه داشته باشم
ممنون

ظ
۰۹-مرداد-۱۳۸۸, ۲۰:۲۸:۰۷
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : alimogmov
MT888 آفلاین
كاربر تک ستاره
*

ارسال‌ها: 44
موضوع‌ها: 7
تاریخ عضویت: مرداد ۱۳۸۷

تشکرها : 35
( 17 تشکر در 12 ارسال )
ارسال: #9
RE: استفاده از Excel در وی بی 6
سلام دوستان
من میخوام سلولهای اکسل رو رنگی کنم .خود اکسل خاصیت fill color داره ولی نمیدونم با کدنویسی چطوری انجام بدم.لطفا راهنماییم کنید
۱۴-مرداد-۱۳۸۸, ۰۹:۳۹:۴۶
ارسال‌ها
پاسخ
تشکر شده توسط : alimogmov
Darg غایب
مدير بازنشسته
*****

ارسال‌ها: 894
موضوع‌ها: 40
تاریخ عضویت: تير ۱۳۸۴

تشکرها : 381
( 702 تشکر در 190 ارسال )
ارسال: #10
RE: استفاده از Excel در وی بی 6
(۱۴-مرداد-۱۳۸۸, ۰۹:۳۹:۴۶)MT888 نوشته است: ...میخوام سلولهای اکسل رو رنگی کنم...

کد:
Worksheet.Cells(1, 1).Interior.Color = vbRed
۱۴-مرداد-۱۳۸۸, ۱۲:۵۶:۳۲
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : MT888
arashkhan آفلاین
كاربر تک ستاره
*

ارسال‌ها: 34
موضوع‌ها: 6
تاریخ عضویت: تير ۱۳۸۵

تشکرها : 1
( 3 تشکر در 3 ارسال )
ارسال: #11
RE: استفاده از Excel در وی بی 6
کاش یکی هم جواب مارو می دادSad

ظ
۱۵-مرداد-۱۳۸۸, ۱۲:۱۰:۴۹
وب سایت ارسال‌ها
پاسخ


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  کمک برای گرفتن خروجی در EXCEL javad917 4 5,369 ۱۵-آبان-۱۳۹۳, ۱۴:۵۸:۵۴
آخرین ارسال: javad917
  انتقال دیتا از میکرو به excel در vb ملودی 2 4,444 ۲۱-دى-۱۳۹۰, ۰۲:۲۷:۵۶
آخرین ارسال: robojalal
  شبیه سازی excel x7337x 7 5,678 ۰۹-دى-۱۳۸۹, ۲۳:۵۱:۳۹
آخرین ارسال: x7337x
Exclamation استفاده از EXCEL ehsan-om 0 1,522 ۱۱-شهریور-۱۳۸۷, ۱۴:۳۸:۰۶
آخرین ارسال: ehsan-om
  فرستادن داده ها از vb6 به excel sanam 4 5,303 ۱۱-آبان-۱۳۸۶, ۱۵:۰۹:۲۹
آخرین ارسال: Darg

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS