http://expert.csdn.net/Expert/FAQ/FAQ_Index.asp?id=30258
http://expert.csdn.net/Expert/FAQ/FAQ_Index.asp?id=855
http://expert.csdn.net/Expert/FAQ/FAQ_Index.asp?id=855
解决方案 »
- 求教高手,帮写正则表达式一个
- C比C#快在哪里? 运算更快 还是操作内存和文件更快?
- Generate Sequence Diagram 没有找到这个菜单
- NetworkStream接收数据问题
- 有个float类型的值,在写入数据库的时候,oledbtype应该选哪种呢?是VarNumeric还是numeric呢?
- vc有openGL,c#有什么能和他匹敌呢?
- 如何在记事本实现查找功能?
- DataSet???
- 第一个C#程序(记事本),求赞!!
- 求助,C#GDI+画图程序,画布放大后,旋转里面的图片时,图片坐标跑偏问题??
- winform里面,当我右键单击treeview,如何获得treeview的当前右键所"选定"Node的相关值?
- 怎样将IIS 中将虚拟目录作为应用程序进行配置??????????????????????????????????????????
if (exc == null) {
Console.WriteLine("ERROR: EXCEL couldn't be started");
return 0;
}
exc.set_Visible(0, true);
Workbooks workbooks = exc.Workbooks;
_Workbook workbook = workbooks.Add(XlWBATemplate.xlWBATWorksheet, 0); _Worksheet worksheet = (_Worksheet) sheets.get_Item(1);
if (worksheet == null) {
Console.WriteLine ("ERROR in worksheet == null");
}Range range1 = worksheet.get_Range("C1", Missing.Value);
if (range1 == null) {
Console.WriteLine ("ERROR: range == null");
}
const int nCells = 1;
Object[] args1 = new Object[1];
args1[0] = nCells;
range1.GetType().InvokeMember("Value", BindingFlags.SetProperty, null, range1, args1);
例程:
using System;
using System.Reflection;
using System.Runtime.InteropServices;
using Excel;class Excel {
public static int Main() {
Application exc = new Application();
if (exc == null) {
Console.WriteLine("ERROR: EXCEL couldn't be started!");
return 0;
}exc.set_Visible(0, true);
Workbooks workbooks = exc.Workbooks;
_Workbook workbook = workbooks.Add(XlWBATemplate.xlWBATWorksheet, 0);
Sheets sheets = workbook.Worksheets;_Worksheet worksheet = (_Worksheet) sheets.get_Item(1);
if (worksheet == null) {
Console.WriteLine ("ERROR: worksheet == null");
}Range range1 = worksheet.get_Range("C1", Missing.Value);
if (range1 == null) {
Console.WriteLine ("ERROR: range == null");
}
const int nCells = 1;
Object[] args1 = new Object[1];
args1[0] = nCells;
range1.GetType().InvokeMember("Value", BindingFlags.SetProperty, null,range1, args1);
return 100;
}
}现在我们来看看如何使用数组,他有些类似于设置单元格。仅仅需要的改变只是args2[0] = array2;
const int nCell = 5;
Range range2 = worksheet.get_Range("A1", "E1");
int[] array2 = new int [nCell];
for (int i=0; i < array2.GetLength(0); i++) {
array2[i] = i+1;
}
Object[] args2 = new Object[1];
args2[0] = array2;
range2.GetType().InvokeMember("Value", BindingFlags.SetProperty, null, range2, args2);
http://www.csdn.net/Develop/Article/18/18344.shtm
这个例子我见过。
但是在这里:
Dim myOleDbCommand As OleDbCommand = New OleDbCommand("SELECT *
FROM [Sheet1$]",myOleDbConnection)
如果人家的Sheet名改了呢?如何能知道它改过的Sheet名称?
通过上面这种方法是可以的,但必须是已知Sheet Name.要求是不知Sheet Name的情况下的读取。
+"Data Source=" + this.txtFileName.Text + ";"
+"Extended Properties=\"Excel 8.0\";";
这个Connection String 对吗?我的connection的open出错啊。
的确,这里的信息比较全。谢谢