怎样才能设置我想要设置的excel表中某行的格式,如颜色,字体大小。我想对于各位高手来说不是什么难题了。网上复制的东西就不要贴了,除非验证过。我找了很多资料,都不尽人意。还有想另外问一下,我找的一个资料上这样写着
pThisRange->GetRange("A1:C1")->GetInterior()->ColorIndex = 47 ;(好像不能用,也可能是好我弄错了)
这代码中的颜色值分别标示什么意思,如颜色中的47,16这些值分别是什么颜色呢,难道不是用RBG格式吗??不懂。
pThisRange->GetRange("A1:C1")->GetInterior()->ColorIndex = 47 ;(好像不能用,也可能是好我弄错了)
这代码中的颜色值分别标示什么意思,如颜色中的47,16这些值分别是什么颜色呢,难道不是用RBG格式吗??不懂。
前一阵子我也在搞这个,
我是在csdn上下了两个工程,合并起来用的。
颜色不清楚是怎么搞的,那个索引值大概是0到20,不是渐变的,搜一下,很多的,
打开Excel,开启录制宏。
进行你需要程序处理的步骤
停止录制
点击查看宏,看看VBA是如何做的。
你还开了两个帖子啊,把那个帖子上我的回复也给你贴这里,你看到哪个是哪个吧引用 5 楼 lyayfy 的回复:
谢谢楼上的,你说的这个你有试过吗,我好像在网上看到过这个代码,但是好像不行,根本没有font这个属性你在类视图里选择导入类,然后选择TypeLib啥啥啥的(具体记不得了),然后选择Excel的库,把Font添加进去就可以了
\cfont0.h(3) : warning C4278: “RGB”: 类型库“C:\\Program Files\\Microsoft Office\\OFFICE11\\EXCEL.EXE”中的标识符已经是宏;使用“rename”限定符
\cfont0.h(3) : warning C4192: 导入类型库“IFont”时自动排除“C:\\Program Files\\Microsoft Office\\OFFICE11\\EXCEL.EXE”
\projectsaferule\cfont0.h(3) : warning C4192: 导入类型库“IPicture”时自动排除“C:\\Program Files\\Microsoft Office\\OFFICE11\\EXCEL.EXE”
1>g:\cfont0.h(3) : warning C4278: “DialogBox”: 类型库“C:\\Program Files\\Microsoft Office\\OFFICE11\\EXCEL.EXE”中的标识符已经是宏;使用“rename”限定符
\cfont0.h(3) : error C2872: “Font”: 不明确的符号
可能是“f:\vs2005\vc\include\comdef.h(310) : Font”
或“f:\vs2005\vc\platformsdk\include\gdiplusheaders.h(244) : Gdiplus::Font”
\cfont0.h(3) : error C2872: “Font”: 不明确的符号
最多的就是这个错误或“f:\vs2005\vc\platformsdk\include\gdiplusheaders.h(244) : Gdiplus::Font”
1>...\cfont0.h(3) : warning C4278: “CopyFile”: 类型库“C:\\Program Files\\Microsoft Office\\OFFICE11\\EXCEL.EXE”中的标识符已经是宏;使用“rename”限定符
1>...\cfont0.h(3) : error C2872: “Font”: 不明确的符号因为这个项目是我后来接手的,之前已经实现了excel的导出功能,只是要在现有的基础上对导出格式进行修改。所以是不是之前已经导入这些库了,还有,我在模块的CPP文件首部,发现了#include "excel.h"这个语句,我就确定了,现在大侠们能告诉我,现在这种情况,我要怎么进行调整能。谢谢了!
{
//--GGBBRR
Range range = m_Worksheet.GetRange(COleVariant(pszC0),COleVariant(pszC1));
if(range == NULL) return ;
Font font = range.GetFont();
if(font == NULL) return ;
font.SetColor(COleVariant(lColor)); return ;
}void CExcel::SetFont(LPCTSTR pszC0, LPCTSTR pszC1, LPTSTR pszFontName,long lSize)
{
Range range = m_Worksheet.GetRange(COleVariant(pszC0),COleVariant(pszC1));
if(range == NULL) return ;
Font font = range.GetFont();
if(font == NULL) return ;
font.SetName(COleVariant(pszFontName));
font.SetSize(COleVariant(lSize));
return ;
}
void CExcel::SetBold(LPCTSTR pszC0, LPCTSTR pszC1, BOOL bBold)
{
Range range = m_Worksheet.GetRange(COleVariant(pszC0),COleVariant(pszC1));
if(range == NULL) return ;
Font font = range.GetFont();
if(font == NULL) return ;
font.SetBold(COleVariant((long)bBold));
return ;
}
Range rgMyRge2; Range rang_temp; 但是就是没有什么font interior类真奇怪,我包含的头文件是excel.h
_Font m_font;
m_font = rgMyRge.GetFont();
if(m_font == NULL) return ;
rang_temp.AttachDispatch(rgMyRge.GetCells());
rang_temp.AttachDispatch((rang_temp.GetItem (COleVariant(long(1)), COleVariant(long(1)))).pdispVal);
m_font.AttachDispatch (rang_temp.GetFont());
m_font.SetColor((long)3);
现在是不报错咯,但是运行到这里弹出找不到成员,我跟踪发现是m_font.SetColor((long)3);
这一句的问题,但我查看了_Font里面却是有setcolor的成员函数阿??真奇怪咯,实在不是什么一个很难的东西,怎么就老出问题。。还请大家指点!!!
#include <comdef.h>并将excel9.cpp加入到工程的源代码文件列表中