c#操作excel ,txtbox 多行写入EXCEL,回车符在EXCEL中显示一个像音乐符的东西,如何解决
解决方案 »
- 用using System.Net.Mail怎么设置代理服务器啊
- 求教!ASP.NET中Timer到时间不触发时间..?
- 一个函数怎么实现?
- 这样用try...catch 好不好?
- 字符串转换成时间?
- 如何向winform的DataGridView的CheckBox列插入其它值???
- 关于两个页面的DataSet互相传值问题-----在线等急!!!
- C#中TeeChart曲线画法
- socket 通信问题,大牛留步!!
- 有关枚举类型的一个问题
- 未处理的"System.InvalidOperationException"类型的异常出现在system.windows.forms.dll中。其它信息: DragDrop 注册失败。
- DateTimePicker的问题
关键是你要写文本的时候cell属性用FormulaR1C1
我在单元格B1写数据时用的多行文本框 ,输入1回车再输入b
结果在Excel 显示两行数据,并自动调整为两行行高
测试
输入1回车再输入b回车再输入x
结果在Excel 显示3行数据,并自动调整为3行行高
/// <summary>
/// 对指定单元格或指定范围内的单元格带区填充文本。行索引为从1开始的数字,最大65536,列索引为A~Z、AA~AZ、BA~BZ...HA~HZ、IA~IV的字母及组合,也可以是1-65536数字。
/// 作者:长江支流 [email protected]
/// </summary>
/// <param name="p_rowIndex">单元格行索引,从1开始,最大65536。</param>
/// <param name="p_colIndex">单元格列索引,从1开始,列索引为A~Z、AA~AZ、BA~BZ...HA~HZ、IA~IV的字母及组合,也可以是1-65536数字。</param>
/// <param name="p_text">指定要填充的文本</param>
public void SetCellText(int p_rowIndex,string p_colIndex,string p_text)
{
Excel.Range range;
range = GetRange(p_rowIndex,p_colIndex);
range.Cells.FormulaR1C1 = p_text;
range = null;
}
GetRange返回指定行列的Excel.Range,相信楼主这个会的。
我把Excel二次开发封装了,如果需要,给我
mail:[email protected]
真心希望周兄搞出更多开源的东东来。希望我哪天有本事了,也拿出来和大家共享!
把这段时间做项目确实太忙了些,估计下月初可以轻松了,做完了后抽空弄一弄出个V2.5版。楼主,你发的邮件收到了,我在我本机上试你的代码没问题,我在我的示例代码中加了一个
button,调用你发的importexe,真的可以换行private void button2_Click(object sender, System.EventArgs e)
{
importexe();
}private void importexe()
{
//创建Application对象
Excel.Application xApp=new Excel.ApplicationClass();
xApp.Visible=true;
Excel.Workbook xBook=xApp.Workbooks.Add(System.Reflection.Missing.Value);//新建文件的代码
Excel.Worksheet xSheet=(Excel.Worksheet)xBook.Sheets[1];
Excel.Range rng3=xSheet.get_Range("C6",System.Reflection.Missing.Value); rng3.Cells.FormulaR1C1 = txtCellText.Text;
rng3.Interior.ColorIndex=6; //设置Range的背景色
}邮件已回,请查收一下MIS金质打印通Excel专版,它将随V2.5版一起发布。
如果在你本机上真不行,楼主再建立一个VB.NET,试一试,
因为Excel真正是用VBA编写的,它会转为
rng3.Cells.FormulaR1C1.FormulaR1C1 = "1" & Chr(10) & "b" & Chr(10) & "x"