求大神指點,我每次拷貝 過去原有的sheet格式都改變了
uj5u.com熱心網友回復:
@sars0627uj5u.com熱心網友回復:
自頂下 !快來人uj5u.com熱心網友回復:
@快樂鸚鵡 發發發uj5u.com熱心網友回復:
在Excel中開始記錄宏,手動完成所需功能,結束記錄宏,按Alt+F11鍵,查看剛才記錄的宏對應的VBA代碼。uj5u.com熱心網友回復:
我是照著VBA思路來的,但是使用vc時,格式無法復制過去,有時候復制過去的sheet變成一張圖片uj5u.com熱心網友回復:
//復制源檔案中Worksheet內容bsheet.AttachDispatch(bsheets.GetItem(_variant_t((long)i)));
brange.AttachDispatch(bsheet.GetCells());
//bsheet.Copy(vtMissing,_variant_t(bsheet));
brange.Copy(vtMissing);
//bsheet.Copy(vtMissing);
// brange.AttachDispatch(bsheet.GetCells());
// brange.AttachDispatch(bsheet.GetRange(_variant_t("A1"),_variant_t("Z30")));
//bsheet.Copy(vtMissing,vtMissing);//賦值到粘貼板
//bsheet.Copy(vtMissing,vtMissing);
//在目標檔案最后一個Worksheet后插入一新Worksheet,同時粘貼前面復制內容
brange.ReleaseDispatch();
asheet.AttachDispatch(asheets.Add(vtMissing,_variant_t(lastsheet),vtMissing,vtMissing));
asheet.SetName(bsheet.GetName());
asheet.AttachDispatch(asheets.GetItem(_variant_t(bsheet.GetName())),true);
arange.AttachDispatch(asheet.GetCells(),true);
arange.Activate();
arange.Select();
arange.PasteSpecial((long)13,(long)-4142,vtMissing,vtMissing);
//asheet.PasteSpecial(_variant_t(asheet),_variant_t(asheet),vtMissing,vtMissing,vtMissing,vtMissing,vtMissing);
//arange.PasteSpecial((long)6,(long)-4142,vtMissing,vtMissing);
//brange.PasteSpecial(xlPasteColumnWidths,xlPasteSpecialOperationNone,vtMissing,vtMissing);//復制列寬
// brange.PasteSpecial(xlPasteFormats,xlPasteSpecialOperationNone,vtMissing,vtMissing);//復制表的格式
// arange.Paste(vtMissing);
//bsheet.Activate();
uj5u.com熱心網友回復:
自己頂下,我是先用range1.copy方法在excel1中復制 在使用worksheet.pastespecial方法在excel2中粘貼,但是最后在excel2中就成為圖片格式,我需要excel格式轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/76886.html
上一篇:64bit activex無法出現在VS2010開發環境的串列中。
下一篇:請教各位 用vs2010做Ribbon office風格界面 雙擊左上角圓形選單按鈕 就會退出 怎樣使它不回應任何操作 只是一個圖示在那就可以了
