本文介绍: 一开始我在设置单元格宽度时,设置了同一行多个单元格宽度为200,在保存excel失败。只设置一个单元格宽度为200时,发现长度特别长。最后发现 excel列宽并不是我认为的像素mm单位excel列宽为 十分之一英寸,宽度设置函数为 : put_ColumnWidth。相当于excel单元格列宽默认值为20.52mm可以通过拖拽单元格的宽度看到每列的列宽多少。一定要把列宽设置合理范围内,太大了肯定不行!也就是1个单位 = 2.54mm
CString strTL, strBR;
					strTL.Format(L"%s%d", GetExcelColName(cd.nCol), cd.nRow);
					strBR = strTL;
					CRange rangeMerge = range.get_Range(_variant_t(strTL), _variant_t(strBR));
					rangeMerge.put_ColumnWidth(_variant_t((long)(20)));

宽度设置函数为 : put_ColumnWidth

一开始我在设置单元格宽度时,设置了同一行多个单元格宽度为200,在保存excel失败。 只设置一个单元格宽度为200时,发现长度特别长。

最后发现 excel的列宽并不是我认为的像素mm单位excel的列宽为 十分之一英寸,

就是1个单位 = 2.54mm

excel 默认的列宽为8.08个单位查看步骤为:  开始–》单元格–》格式–》列宽–》打开看到

相当于excel单元格的列宽默认值为20.52mm

可以通过拖拽单元格的宽度看到每列的列宽是多少

一定要把列宽设置在合理范围内,太大了肯定不行!

//没必要设置那么宽,太宽了,实际可能也就 20个单位
rangeMerge.put_ColumnWidth(_variant_t((long)(230)));

原文地址:https://blog.csdn.net/u012719076/article/details/134785226

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_42812.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注