VC下設定Excel單元格的邊框

2021-05-26 17:48:48 字數 1474 閱讀 5145

為了能使得輸出到excel中的資料顯示**,可以呼叫事先設定好的模板,但是不靈活。我花了乙個中午的時間摸索出如何設定它了。

具體**如下:

lpdispatch prange;

cstring   cell;

int   c,c1,c2;

_variant_t  vrange1;   // 設定單元格的線;

_variant_t  vrange2;

_variant_t  vrange3;

_variant_t  vrange4;

c='a';

c1=j/26;

c2=j&;

if(c1==0)

cell.format("%c%d",c2+c,i+1); // i+1 :表示從第二行開始關聯

else

cell.format("%c%c%d",c1+c-1,c2+c-1,i+1);

verify(prange = m_worksheet.getrange(colevariant(cell)));

m_range.attachdispatch(prange);

//對齊方式

var.vt = vt_i2;

var.ival=-4108;

m_range.sethorizontalalignment(var);

m_range.setverticalalignment(var);

//// 設定單元格的線;

vrange1.vt =vt_i2;

vrange1.lval =1;   // 線的樣式:0- no line; 1-solid; 2-big dot;3-small dot;4-dash dot; 5-dash dot dot;

vrange2.vt =vt_i2;

vrange2.lval =3;  // 線的粗細程度;

vrange3.vt =vt_i2;

vrange3.lval =1;   // 1-black;2-white;3-red;4-green;5-blue; 6-yellow; 7-pink;8-dark blue;

vrange4.vt = vt_ui4;

vrange4.uintval =rgb(0,0,0);  // 我測試後認為,沒有實際意義,只有vrange3起作用

m_range.borderaround(vrange1,vrange2,vrange3,vrange4);

////

strvalue=m_book.gettextrc(i,j+2);

strvalue.trimleft(" ");

strvalue.trimright(" ");  

if(!strvalue.isempty())

m_range.releasedispatch();

雖然沒有什麼高深的技術含量,只是為了讓後面需要的人少走點彎路。

不當之處,還望指正。

作者blog:

2 VC 設定EXCEL單元格的格式

示例 將所有單元格設定為文字格式 cpp view plain copy excel應用程式介面 workbooks books 工作薄集合 workbook book 工作薄 worksheets sheets 工作表集合 worksheet sheet 工作表 range range excel...

POI設定Excel單元格樣式

poi中可能會用到一些需要設定excel單元格格式的操作小結 先獲取工作薄物件 hssfworkbook wb new hssfworkbook hssfsheet sheet wb.createsheet hssfcellstyle cellstyle wb.createcellstyle 一 設...

Java POI 設定Excel單元格的寬度和高度

在excel中,單元格的寬度其實就是列的寬度,因為excel假設這一列的單元格的寬度肯定一致。所以要設定單元格的寬度,我們就得從列的寬度下手,hssfsheet有個方法叫setcolumnwidth,共有兩個引數 乙個是列的索引 從0開始 乙個是寬度。現在假設你要設定b列的寬度,就可以用下面的 hs...