PDA

View Full Version : نوشتن یک برنامه ساده سی شارپ که اکسل را بخواند



m.abdollahi
پنج شنبه 23 مرداد 1393, 17:21 عصر
سلام دوستان ..:قلب:
من می خوام یک برنامه بنویسم که یه فایل اکسل یک ستونی که عدد هستند را بخواند و آنها را مقایسه و مرتب کند(مثلا اعداد بخشپذیر بر 2و3و5 را جداگانه مرتب کند) و دوباره نتیجه را در یک فایل اکسل نمایش دهد.
اگه کسی هست منو راهنماییی کند.

ehsan2589040
پنج شنبه 23 مرداد 1393, 19:15 عصر
میتونی فابل اکسلت رو به فرمت .csv(comma) تبدیل کنی و با دستور file.readalllines بخونیش و با sqlite بر اساس comma جداش کنی

m.abdollahi
شنبه 25 مرداد 1393, 15:35 عصر
داخل سی شارپ دستور file.readalllines نبود!!

m.abdollahi
شنبه 25 مرداد 1393, 18:22 عصر
یکی میتونه کمکم کنه؟
ناقصه و خطا میده
جایی که ناقصه با 9999999999جایگذاری شده



using System;
using System.Windows.Forms;
using Excel=Microsoft.Office.Interop.Excel;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace mooooooob
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void releaseobject(object obj)
{
try
{
System.Runtime.InteropServices.Marshal.ReleaseComO bject(obj);
obj = null;
}
catch (Exception ex)
{
obj = null;
MessageBox.Show("Unable to release the object " + ex.ToString());

finally
{
GC.Collect();
}

}
private void button1_Click(object sender, EventArgs e)
{
Excel.Application X1App;
Excel.Workbook X1Workbook;
Excel.Worksheet X1Worksheet;
Excel.Range Range;


X1App = new Excel.Application();
X1Workbook = X1App.Workbooks.Open(Application.StartupPath + "\\EXCELL!.xlsx", 0, true 9999999999
X1Worksheet = (Excel.Worksheet)X1Workbook.Worksheets.get_Item(1) ;
Range = X1Worksheet.UsedRange;
for (int columnCounter = 1; columnCounter <= Range.Columns.Count; columnCounter++)
{
this.dataGridView1.Columns.Add(X1Worksheet.Cells[1,columnCounter].Value2 9999999999
}
string str;
int rowCounter = 0;
int columnCounter2 = 1;
for (int rowCounter = 2 ; rowCounter <=Range.Rows.Count; rowCounter++)
{
this.dataGridView1.Rows.Add();
for (int columnCounter2 = 1; columnCounter2 <= Range.Columns.Count; columnCounter2++)
{
9999999999 str=Convert.ToString((Range.Cells[rowCounter,columnCounter2] as Excel.Range
9999999999 this.dataGridView1.Rows[rowCounter - 2].Cells[columnCounter2 - 1].Value = str

}
}

X1Workbook.Close(true, null, null);
X1App.Quit();

releaseobject(X1Worksheet);
releaseobject(X1Workbook);
releaseobject(X1App);

}

}
}

ehsan2589040
یک شنبه 02 شهریور 1393, 23:38 عصر
ببین کمکت میمنه
http://www.dotnetperls.com/file-readalllines
http://stackoverflow.com/questions/18319499/read-all-lines-in-a-text-file-and-add-them-c-sharp

ehsan2589040
یک شنبه 02 شهریور 1393, 23:45 عصر
ببین به دردت میخوره
122639

rezaei_y
یک شنبه 02 شهریور 1393, 23:49 عصر
میتونی از LinqToExcel استفاده کنی آموزش (http://www.dotnettips.info/post/1537/%D8%AE%D9%88%D8%A7%D9%86%D8%AF%D9%86-%D8%A7%D8%B7%D9%84%D8%A7%D8%B9%D8%A7%D8%AA-%D8%A7%D8%B2-%D9%81%D8%A7%DB%8C%D9%84-%D8%A7%DA%A9%D8%B3%D9%84-%D8%A8%D8%A7-%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87-%D8%A7%D8%B2-linqtoexcel)