城市碼 行業碼 戶名 地址 電話
410000 10060400 XX有限公司 XXX路 659531510
A000000335 辦公室 66340705
A000000335 市場室 66340701 A000000335 客服部 66340720 A000000335 銷售室 66340732
410002 10060401 XX有限公司 XXX路 652531510
A000000336 辦公室 66540705
A000000336 市場室 66540701 A000000336 客服部 66540720 A000000336 銷售室 66540732
像這樣的格式。不知道怎么做。大蝦幫幫我!!!
uj5u.com熱心網友回復:
有用到ole.去看看就可以了.
uj5u.com熱心網友回復:
不行uj5u.com熱心網友回復:
用ole對excel或word操作(會用到vba,網上例子很多,可以查找一下)uj5u.com熱心網友回復:
這問題的解決方法很多,拜托,你soso 在來這里問,找都不找就直接問,我就不喜歡這樣的小兵,不適合當程式員,一點自己解決問題的能力都沒有.希望我的話對你有幫助.uj5u.com熱心網友回復:
樓上的你有什么資格說老子。。老子就不SO 就問你能怎么著。。。你不喜歡老子這樣的小兵。。老子也沒有讓你回答。。不會回答就不要在這放你那狗屁。小屁孩一個。uj5u.com熱心網友回復:
直接用資料視窗,通過一個dw_1.saveas()函式就可以吧uj5u.com熱心網友回復:
saveas()或SAVEASASCILL(),如果有格式要求的就得用OLEOBJECT變數或者OLE控制元件,進行連接然后逐行寫入,這方面的資料網上也有的。uj5u.com熱心網友回復:
//函式功能:匯出為WORD檔案//函式名:f_outputtoword_new
//輸入: adw - datawindow,指定的資料視窗
//回傳值: Integer
constant integer ppLayoutBlank = 12
OLEObject ole_object
ole_object = CREATE OLEObject
integer li_ret
li_ret = ole_object.ConnectToObject("","word.application")
IF li_ret <> 0 THEN
//如果Word還沒有打開,則新建。
li_ret = ole_object.ConnectToNewObject("word.application")
if li_ret <> 0 then
MessageBox('OLE錯誤','OLE無法連接!錯誤號:' + string(li_ret))
return 0
end if
ole_object.Visible = True
END IF
long ll_colnum,ll_rownum
constant long wdWord9TableBehavior = 1
constant long wdAutoFitFixed = 0
constant long wdCell = 12
string ls_value
pointer oldpointer
oldpointer = SetPointer(HourGlass!)
string ls_objects,ls_obj,ls_objs[],ls_objtag[]
long ll_pos,ll_len,ll_num = 0
ls_objects = trim(adw.Describe('datawindow.Objects'))
do while (pos(ls_objects,"~t") > 0)
ll_pos = pos(ls_objects,"~t")
ll_len = ll_pos - 1
ls_obj = left(ls_objects,ll_len)
if (adw.Describe(ls_obj + '.type') = 'column' or &
adw.Describe(ls_obj + '.type') = 'compute') and &
(adw.Describe(ls_obj + '.band') = 'detail') and (ls_obj <> "asd") then
ll_num += 1
ls_objs[ll_num] = ls_obj
ls_objtag[ll_num] = adw.Describe(ls_obj + '.tag')
end if
ls_objects = right(ls_objects,len(ls_objects) - ll_pos)
loop
//得到資料視窗資料的列數與行數(行數應該是資料行數 + 1)
ll_colnum = ll_num
ll_rownum = adw.rowcount() + 1
ole_object.Documents.Add()
ole_object.ActiveDocument.Tables.Add(ole_object.Selection.Range, ll_rownum, ll_colnum)
string ls_colname
integer i,j,k
for i = 1 to ll_colnum
//得到標題頭的名字
ls_value = ls_objtag[i]
ole_object.Selection.TypeText(ls_value)
for k = 1 to f_cncharnum(ls_value)
ole_object.Selection.TypeBackspace()
next
ole_object.Selection.MoveRight(wdCell)
next
adw.setredraw(false)
ole_object.Selection.MoveLeft(wdCell)
string column_name
for i = 2 to ll_rownum
for j = 1 to ll_colnum
column_name = ls_objs[j]
if adw.Describe(column_name + '.type') = 'column' then
ls_value = adw.Describe("Evaluate('LookupDisplay("+column_name+")',"+string(i - 1)+")")
end if
if adw.Describe(column_name + '.type') = 'compute' then
ls_value = adw.Describe("Evaluate('" + adw.Describe(column_name + '.expression') + "',"+string(i - 1)+")")
end if
ole_object.Selection.MoveRight(wdCell)
ole_object.Selection.TypeText(ls_value)
for k = 1 to f_cncharnum(ls_value)
ole_object.Selection.TypeBackspace()
next
next
next
adw.setredraw(true)
constant long wdFormatDocument = 0
SetPointer(oldpointer)
//保存新建的檔案
if messagebox("保存","檔案已經成功完成,是否保存?",Question!,YesNo!) = 1 then
string docname, named
integer value
value = GetFileSaveName("選擇檔案",docname, named, "DOC","Doc Files (*.DOC), *.DOC")
IF value = 1 THEN
ole_object.ActiveDocument.SaveAs(docname, 0,False,"",True,"",False,False,False, False,False)
end if
end if
//斷開OLE連接
Ole_Object.DisConnectObject()
Destroy Ole_Object
return 1
uj5u.com熱心網友回復:
//函式功能:匯出EXCEL檔案//函式名:f_outputtoexcel_new
//輸入: adw - datawindow,指定的資料視窗
//回傳值: Integer
constant integer ppLayoutBlank = 12
OLEObject ole_object
ole_object = CREATE OLEObject
integer li_ret
li_ret = ole_object.ConnectToObject("","Excel.Application")
IF li_ret <> 0 THEN
//如果Excel還沒有打開,則新建。
li_ret = ole_object.ConnectToNewObject("Excel.Application")
if li_ret <> 0 then
MessageBox('OLE錯誤','OLE無法連接!錯誤號:' + string(li_ret))
return 0
end if
ole_object.Visible = True
END IF
pointer oldpointer
oldpointer = SetPointer(HourGlass!)
ole_object.Workbooks.Add
long ll_colnum,ll_rownum
string ls_value
string ls_objects,ls_obj,ls_objs[],ls_objtag[]
long ll_pos,ll_len,ll_num = 0
ls_objects = trim(adw.Describe('datawindow.Objects'))
do while (pos(ls_objects,"~t") > 0)
ll_pos = pos(ls_objects,"~t")
ll_len = ll_pos - 1
ls_obj = left(ls_objects,ll_len)
if (adw.Describe(ls_obj + '.type') = 'column' or &
adw.Describe(ls_obj + '.type') = 'compute') and &
(adw.Describe(ls_obj + '.band') = 'detail') and (ls_obj <> "asd") then
ll_num += 1
ls_objs[ll_num] = ls_obj
ls_objtag[ll_num] = adw.Describe(ls_obj + '.tag')
end if
ls_objects = right(ls_objects,len(ls_objects) - ll_pos)
loop
//得到資料視窗資料的列數與行數(行數應該是資料行數 + 1)
ll_colnum = ll_num
ll_rownum = adw.rowcount() + 1
string ls_colname
integer i,j,k
for i = 1 to ll_colnum
//得到標題頭的名字
ls_value = ls_objtag[i]
ole_object.cells(1,i).value = ls_value
next
string column_name
for i = 2 to ll_rownum
for j = 1 to ll_colnum
column_name = ls_objs[j]
if adw.Describe(column_name + '.type') = 'column' then
ls_value = adw.Describe("Evaluate('LookupDisplay("+column_name+")',"+string(i - 1)+")")
end if
if adw.Describe(column_name + '.type') = 'compute' then
ls_value = adw.Describe("Evaluate('" + adw.Describe(column_name + '.expression') + "',"+string(i - 1)+")")
end if
ole_object.cells(i,j).value = ls_value
next
next
SetPointer(oldpointer)
ole_object.disconnectobject()
DESTROY ole_object
return 1
uj5u.com熱心網友回復:
不明LZ在說什么轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/112171.html
標籤:數據庫相關
