線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1391
推到 Plurk!
推到 Facebook!

怎麼解決呀

 
Tomi
一般會員


發表:35
回覆:42
積分:15
註冊:2002-03-13

發送簡訊給我
#1 引用回覆 回覆 發表時間:2002-08-02 15:54:12 IP:61.13.xxx.xxx 未訂閱
我將DATABASE輸出到EXCEL,以下是其中一段語法 MsExcelWorkSheet.Range[chr(64 k) '1'].Value:=s 其中64 k是我填入欄位值,但是若k>26時(A-Z) 又回到AA開始,以致於資料寫不進去而錯誤 請問這段要如何修正呢?
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#2 引用回覆 回覆 發表時間:2002-08-02 17:16:56 IP:211.22.xxx.xxx 未訂閱
若改用如下對照表的方式呢?
  WS.Range['AA1'].Value := s;
Tomi
一般會員


發表:35
回覆:42
積分:15
註冊:2002-03-13

發送簡訊給我
#3 引用回覆 回覆 發表時間:2002-08-04 01:28:58 IP:61.30.xxx.xxx 未訂閱
引言: 若改用如下對照表的方式呢?
  WS.Range['AA1'].Value := s;
當然呀!可是有點死板 只是說這樣好像太死板了 我現在適用一個條件句去判斷 是否>26再決定欄位 是否有活一點的演算法?
領航天使
站長


發表:12216
回覆:4186
積分:4084
註冊:2001-07-25

發送簡訊給我
#4 引用回覆 回覆 發表時間:2002-08-04 09:03:41 IP:192.168.xxx.xxx 未訂閱
// i:0...n
function to26(i:integer):string;
var s:string;
begin
  s:='';
  repeat
     s:=chr(ord('A') ((i-1) mod 26)) s;
     i:=(i-1) div 26;
  until i<=0 ;
  result:=s;
end;
~~~Delphi K.Top討論區站長~~~
------
~~~Delphi K.Top討論區站長~~~
Tomi
一般會員


發表:35
回覆:42
積分:15
註冊:2002-03-13

發送簡訊給我
#5 引用回覆 回覆 發表時間:2002-08-05 11:55:25 IP:61.13.xxx.xxx 未訂閱
引言:
// i:0...n
function to26(i:integer):string;
var s:string;
begin
  s:='';
  repeat
     s:=chr(ord('A') ((i-1) mod 26)) s;
     i:=(i-1) div 26;
  until i<=0 ;
  result:=s;
end;
~~~Delphi K.Top討論區站長~~~
哈哈! 又學一招嘍 謝謝站長~!
kadee
高階會員


發表:11
回覆:141
積分:165
註冊:2002-03-20

發送簡訊給我
#6 引用回覆 回覆 發表時間:2002-08-05 13:02:06 IP:203.69.xxx.xxx 未訂閱
可直接用 for j:= 0 to 100 do sheet.cell[j,k].value := 123 Kadee_BigRed
------
Kadee/BigRed Ent.
www.tw165.com
系統時間:2024-05-02 16:46:28
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!