PDA

View Full Version : سوال: دسترسی به سلولهای اکسل



csharpdoost
پنج شنبه 21 مرداد 1389, 22:40 عصر
دوستان سلام
بعد از باز شدن برنامه اکسل چطور میشه به شیت دلخواه اون و همچنین سلول دلخواه اون شیت دسترسی پیدا کرد؟ و همچنین چطور میشه بین سلولها حرکت کرد؟
با تشکر فراوان

vandermond
جمعه 22 مرداد 1389, 00:14 صبح
سلام دوست عزيز
توي سايت هست. لطفا جستجو كنيد.
اگه پيدا نكردي بگو خودم لينكش رو پيدا كنم. ولي اگه پيدا كردم ....:تشویق::لبخند:.

csharpdoost
جمعه 22 مرداد 1389, 05:12 صبح
سلام دوست عزيز
توي سايت هست. لطفا جستجو كنيد.
اگه پيدا نكردي بگو خودم لينكش رو پيدا كنم. ولي اگه پيدا كردم ....:تشویق::لبخند:.
دوست عزیز فکر میکنی جستجو نکرده سوال کردم ؟
جستجو کردم اما چیزی که مشکلم رو حل کنه پیدا نکردم.
اگه لینکشو بذارید متشکر میشم.

vandermond
جمعه 22 مرداد 1389, 17:58 عصر
دوست عزيز دعوا كه نداريم:لبخند:
نميدونم شما چه طوري جستجو ميكنيد:متعجب:.
مثلا اين يكي پست 6 مخصوصا (كدها رو نگاه كن ميفهمي): http://barnamenevis.org/forum/showthread.php?t=218618
البته تو همون تاپيك بالا لينك به تاپيك ديگه هم داره.
مثلا CodeProject :(فقط كد رو نگاه كني ميفهمي) http://www.codeproject.com/KB/cs/Excel_and_C_.aspx (http://www.codeproject.com/KB/cs/Excel_and_C_.aspx)
اين فقط دو سه تا لينك اول رو زدم. يادمه يك تاپيك بود خيلي كامل. حتي براي چارت كشيدن و .... هم داشت. ديگه اونو ميزارم خودت پيدا كني. (اگه باز هم پيدا نكردي بگو ولي ميدونم ديگه ميتوني)

csharpdoost
جمعه 22 مرداد 1389, 22:10 عصر
مثلا اين يكي پست 6 مخصوصا (كدها رو نگاه كن ميفهمي): http://barnamenevis.org/forum/showthread.php?t=218618
البته تو همون تاپيك بالا لينك به تاپيك ديگه هم داره.
مثلا CodeProject :(فقط كد رو نگاه كني ميفهمي) http://www.codeproject.com/KB/cs/Excel_and_C_.aspx (http://www.codeproject.com/KB/cs/Excel_and_C_.aspx)

دوست عزیز
این لینک ها رو پیدا کرده بودم اما همانطور که گفتم مشکلم رو حل نکرد یا بهتره بگم نتونستم خطاش رو رفع کنم. اگه یک کد ساده که بشه باهاش تو اکسل داده نوشت و داده خوند رو لطف کنید متشکر میشم .

vandermond
شنبه 23 مرداد 1389, 06:05 صبح
دوست عزيز همون اولي كه بهت دادم پست 6 رو نگاه كن:
http://barnamenevis.org/forum/showpost.php?p=970178&postcount=6
آخر پست توي كد آخر و آخرين كدي كه نوشته دقيقا دسترسي به سلول هست.
اگه واقعا (واقعا) نتونستي با استفاده از اون بنويسي بگو كه يه نمونه برات بنويسم (ولي مطمئنم ميتوني).

csharpdoost
شنبه 23 مرداد 1389, 15:33 عصر
این هم خطاش. ظاهرا refrense مشکلی نداره ولی باز خطا میگیره.

vandermond
شنبه 23 مرداد 1389, 16:57 عصر
دوست عزيز
براي من كه مشكلي نداره. نميدونم شايد كامل نصب نكردي يا شايد پاك شده ...
اگه درست نشد ميتوني دانلودش كني و دستي اضافه كني به برنامه.

csharpdoost
شنبه 23 مرداد 1389, 17:35 عصر
میشه dllها رو اینجا آپلود کنی ؟

vandermond
شنبه 23 مرداد 1389, 17:41 عصر
من دانلود نكردم. ولي جستجو كن : microsoft.office.interop.excel dll download free
برات مياد. مثلا اين ببين خوبه:
http://dllcentral.com/microsoft.office.interop.excel.dll/11.0.5530/

saeedalg
شنبه 23 مرداد 1389, 17:43 عصر
اون dll مربوط به Interop رو حذف کن شاید مشکل از ورژن office تو باشه، جاش برو Add refrence کن و از بخش COM برو dll آفیس رو اضافه کن، حالا تو usingهاتم اگر مشکلی وجود داره برطرف کن.

vandermond
شنبه 23 مرداد 1389, 17:46 عصر
اون dll مربوط به Interop رو حذف کن شاید مشکل از ورژن office تو باشه، جاش برو Add refrence کن و از بخش COM برو dll آفیس رو اضافه کن، حالا تو usingهاتم اگر مشکلی وجود داره برطرف کن.
دوستمون راست ميگه.
چرا Interop.Excell رو اضافه كردي؟ :متفکر:
بايد Microsoft.Offici.Interop.Excell كه دوستمون هم گفتن توي Com هستش رو اضافه كني.
درست ميشه...

csharpdoost
شنبه 23 مرداد 1389, 18:55 عصر
نظرتون در مورد این error چیه؟
قبلی تقریبا بر طرف شد.

vandermond
شنبه 23 مرداد 1389, 22:35 عصر
من جواب داده بودم. نميدونم چرا نيست الان:متعجب:.
ببين خطا گفته كه اسمبلي اضافه هست و بايد پاكش كني. Microsoft.Interop رو پاك كن و همون كه گفتم رو اضافه كن. (Excell هم كه نميدونم از كجا آوردي)

csharpdoost
شنبه 23 مرداد 1389, 23:12 عصر
.
ببين خطا گفته كه اسمبلي اضافه هست و بايد پاكش كني. Microsoft.Interop رو پاك كن و همون كه گفتم رو اضافه كن. (Excell هم كه نميدونم از كجا آوردي)
خوب این هم نتیجه و خطایی دیگر . همیشه رفع خطا برام سخت میاد.

vandermond
شنبه 23 مرداد 1389, 23:56 عصر
دوست عزيز خودت عكس رو ببين.
من از كجا بفهمم file_open چي هست؟
در ضمن (نكنه فقط كپي كردي كدها رو:متعجب:. من خواستم بخوني بفهمي بنويسي(يا حالا آخرش كپي كني))
ببين file_open رو احتمالا بايد تعريف كني كه نكردي.

csharpdoost
یک شنبه 24 مرداد 1389, 12:12 عصر
اگه واقعا (واقعا) نتونستي با استفاده از اون بنويسي بگو كه يه نمونه برات بنويسم (ولي مطمئنم ميتوني).

دوست عزیز اگه یه برنامه ساده بنویسی ممنون میشم. والا من که هر کاری کردم نتونستم .:عصبانی++:

vandermond
یک شنبه 24 مرداد 1389, 14:29 عصر
دوست عزيز
اين يك نمونه ساده:
فقط فايل اكسلي كه توي برنامه گذاشتم (Excel File) رو بزار توي درايو D و بعد اجرا كن.
فقط كد اين بخش رو نوشتم. خطا و ... رو هم بررسي نكردم. فقط يك نمونه ساده هستش.
موفق باشي...

csharpdoost
یک شنبه 24 مرداد 1389, 20:21 عصر
دوست عزیز
مرحمت فرمودید. اجرکم عندالله
مطمئنن در ادامه نیز سوالاتی برایم پیش خواهد امد لطفا یاریم فرمایید.

vandermond
یک شنبه 24 مرداد 1389, 21:44 عصر
خواهش ميكنم. اميدوارم خودت تا تهش رو درست كني بدون مشكل.
من هم اگه چيزي بلد باشم(كه نيستم:لبخند:) براي پاسخ دريغ نميكنم.

csharpdoost
دوشنبه 25 مرداد 1389, 03:24 صبح
دوستان سلامی دیگر
در خواندن داده از سلول اکسل باز گیر کردم .
اگه اینو هم لطف کنید متشکر میشم

csharpdoost
دوشنبه 25 مرداد 1389, 10:21 صبح
دوستان عزیز
یکی نیست این یه مشکل ما رو هم حل کنه؟ :افسرده:

vandermond
دوشنبه 25 مرداد 1389, 10:32 صبح
دوستان عزیز
یکی نیست این یه مشکل ما رو هم حل کنه؟ :افسرده:
دوست عزيز
من VS ام رو پاك كردم. وقتي دوباره نصبش كردم سعي ميكنم يه كد برات بزارم ولي با يكي قبلي زياد فرق نداره ها باور كن. خودت ميتوني بنويسيش

csharpdoost
دوشنبه 25 مرداد 1389, 11:44 صبح
دوست عزيز
من VS ام رو پاك كردم. وقتي دوباره نصبش كردم سعي ميكنم يه كد برات بزارم ولي با يكي قبلي زياد فرق نداره ها باور كن. خودت ميتوني بنويسيش


ممنون میشم . دیشب تا دم سحر باهاش کلنجار رفتم اما نتونستم .
اگه زودتر لطف کنید که خیلی عالیه

csharpdoost
چهارشنبه 27 مرداد 1389, 13:15 عصر
دوستان سلامی دگر به روی ماهتان
وافعا من به این کد نیاز دارم خواهشمندم کدی که بشه سلولهای اکسل رو خوند یکی برام زحمت بکشه بنویسه .
:ناراحت:

vandermond
پنج شنبه 28 مرداد 1389, 22:08 عصر
سلامي دوباره.
اين كد ساده رو ميزارم برات بزار توي يك باتن:

try
{
int row = int.Parse(textBox2.Text);
int col = int.Parse(textBox3.Text);
object mis = System.Reflection.Missing.Value;
Microsoft.Office.Interop.Excel.Application ExcelApp = new Microsoft.Office.Interop.Excel.Application();
ExcelApp.Visible = false;
System.Threading.Thread.CurrentThread.CurrentCultu re = new System.Globalization.CultureInfo("en-US");
Workbook workbook = ExcelApp.Workbooks.Open(@"D:\Excel File.xlsx", mis, mis, mis, mis, mis, mis, mis, mis, mis, mis, mis, mis, mis, mis);
Sheets sheets = workbook.Worksheets;
Worksheet worksheet = (Worksheet)sheets.get_Item(1);

Range range = (Range)worksheet.Cells[row, col];
textBox1.Text = range.Cells.Value2.ToString();
}
catch
{
MessageBox.Show("This Cell is empty or has problam else");
}
اميدوارم حل بشه مشكلت.

csharpdoost
جمعه 29 مرداد 1389, 09:34 صبح
دوست عزیز واقعا متشکرم
من گهگاهی از خنگ بازیام متعجب میشم :اشتباه: همین کدی رو که اماده به من دادی توی پست دیگه ای با تفوت بسیار کمی معرفی کرده بودی اما من نتونستم ایراد اون رو رفع کنم .

vandermond
شنبه 30 مرداد 1389, 22:47 عصر
دوست عزيز
يكم. خنگ بازي چيه؟ اينكه يه كد رو بلد نباشي يا يادت رفته باشه كه مهم نيست ميري تحقيق ميكني يا ميپرسي يادت مياد يا ياد ميگيري. اين ميشه يادگيري نه خنگ بازي:چشمک:
دوم. من نفهميدم الان مشكل شما حل شد يا نه؟ اگه هنوز مشكل داره متن پيغام رو بزاريد. البته فكر نميكنم مشكل داشته باشه:متفکر:.
در هر حال ببخشيد اينترنتم هم قطع شده زياد نميتونم بيام.