hur.cn - 华软网

 热门搜索

Datawindow 導出至 Excel的問題

  作者:未知    来源:网络    更新时间:2019/1/25
我寫的一個從datawindow轉檔成Excel的語法

integer li_rtn,ii,li_asc
string ls_name,ls_pathname
boolean lb_exist
if datawin.RowCount()<1 then
MessageBox("提醒信息","請先檢索出數據再導出至Excel!")
return -1    //error
end if
li_rtn=GetFileSaveName("保存资料",ls_pathname,ls_name,"xls","Excel资料(*.xls),*.xls")

if li_rtn=1 then
   lb_exist = FileExists(ls_pathname)                //看該资料是否存留
  
  IF lb_exist THEN 
  li_rtn = MessageBox("保存", ls_pathname+"已經存留,是否覆蓋?",Exclamation!, YesNo!)
  end if
  
  if li_rtn=1 then

  //當资料存留,用戶選擇覆蓋,或是资料本就不存留時.   注意變量li_rtn
  li_rtn=datawin.SaveAsAscii(ls_pathname)
     if li_rtn=1 then
     MessageBox("提醒信息","導出數據成功!")
     else
      MessageBox("錯誤信息","導出數據失敗!")
     return -1//error
     end if
  
   else
   return -1//error
   end if
else
return -1
end if

在用這個語法的時候,我發現只需是在datawindow裡的第一個字符是0的時候,轉檔成Excel時都會自動消失,
例如:有一個欄位的值是00563時,轉檔成Excel時,在單元格裡就變成了563,怎樣解決這個問題,
還請大俠們指點,
分數不夠能够再加分,小弟急用!
------华软网友回答------
跟单元格的显示方式有关,00563默许是显示成数字格式的.
------华软网友回复------
學習中
------华软网友回复------

string docname,named,ls_file
integer  li_loops, li_count
long ll_flen
blob lb_b
integer li_FileNum,li_FileNum2

if GetFileSaveName("输出电子表格--请输入资料名",docname, named, "xls","Excel Files (*.xls),*.xls") = 1 then 
if gs_preview.dw_print.SaveAs(docname,HTMLTable!,true)=1 then
ll_flen = FileLength(docname)
li_FileNum = FileOpen("docname.JSY",StreamMode!, Write!, LockWrite!, replace!)
li_FileNum2 = FileOpen(docname,StreamMode!, read!, LockRead! )

FileWrite(li_FileNum, "<meta http-equiv=~"Content-Type~" content=~"text/html; charset=GB2312~">")


IF ll_flen > 32765 THEN
IF Mod(ll_flen, 32765) = 0 THEN
li_loops = ll_flen/32765
ELSE
li_loops = (ll_flen/32765) + 1
END IF

ELSE
li_loops = 1

END IF

FOR li_count = 1 to li_loops
FileRead(li_FileNum2, lb_b)
filewrite(li_filenum,lb_b)

NEXT

FileClose(li_FileNum)
FileClose(li_FileNum2)
ls_file ="docname.JSY"
CopyFileA(ls_file,docname,false)
filedelete(ls_file)

else
messagebox("输出网页","输出电子表格失利!")
end if
END IF
CLOSE(PARENT)


------华软网友回复------
我要寫一個共用的UO,調用者傳一個datawindow , 然後我對此datawindow進行處理, 處理時我必須知道每一行detail的高度,
dw_1.Describe("DataWindow.Detail.Height")隻能獲取整個的detail設定的高度,但如果dw_1.setdetailheight(ll_row1,ll_row2,ll_height )
改變了某幾行的高度,我就無法獲取這幾行的高度了,
有沒有牛人能夠在运用setdetailheight後還能準確獲每一行的detail高度
------华软网友回复------
你能够调用Excel的函数,设置单元格的格式!
------华软网友回复------
关注中      
华软声明:本内容来自网络,如有侵犯您版权请来信指出,本站立即删除。