2013-03-31 59 views
-1

此代碼給我錯誤代碼OLE自動化練成錯誤

ex.Cells [3, 2]. HorizontalAlignment: = xlright; 

ex.Cells [row, 1]. NumberFormat: = 'dd/mm/yy, @'; 

我怎麼能解決這個問題?

感謝

+0

請停止把標籤信息的主題行。標籤可用是有原因的。請使用它們。 (你也一直把'XE3'作爲標題,但是使用'XE2'標籤。下定決心 - 是XE2還是XE3?)你還需要更具體。如果你不告訴我們錯誤是什麼 - 「我們無法從你的屏幕上看到你的屏幕,」這段代碼給我錯誤「沒有任何意義。你得到的**具體錯誤是什麼?哪一行代碼會導致錯誤?第一個引用'Sheet.Cells',第二個引用'ex.Cells'; 'Sheet'和'ex'是什麼? –

+0

你沒有說錯誤是什麼。但是你可以看到錯誤。那爲什麼它不是問題呢?嘗試猜測沒有多少樂趣。請始終包含完整的錯誤消息,逐字複製。 -1直到問題解決。 –

+0

感謝您的回覆。我不使用VCL TExcelApplication和其他組件(我發現安裝了這個組件,不知道在哪裏找到以及如何安裝它,如果你能給我一些建議,謝謝....我剛剛開始使用delphi)您發佈的代碼,但運行,我得到此錯誤:「無法設置類Numberformat範圍的屬性」 - 日期 - 和「無法設置類範圍的Horizo​​ntalAlignment屬性」 - 爲xlright。對不起,但我是初學者...謝謝 – user2225950

回答

1

根據您的其他問題,你使用後期綁定(使用Variant),而不是早期綁定(使用VCL TExcelApplication和其他組件)。這意味着沒有定義像xlRight這樣的特定類型,因爲您尚未使用提供它們的類型庫導入。你必須自己定義他們:

var 
    ... 
    NewAlign: OleVariant; 
const 
    xlBottom = $FFFFEFF5; 
    xlLeft = $FFFFEFDD; 
    xlRight = $FFFFEFC8; 
    xlTop = $FFFFEFC0; 
    xlHAlignCenter = $FFFFEFF4; 
    xlHAlignCenterAcrossSelection = $00000007; 
    xlHAlignDistributed = $FFFFEFEB; 
    xlHAlignFill = $00000005; 
    xlHAlignGeneral = $00000001; 
    xlHAlignJustify = $FFFFEFDE; 
    xlHAlignLeft = $FFFFEFDD; 
    xlHAlignRight = $FFFFEFC8; 
begin 
    // XLApp is the instance of Excel you set up from your previous 
    // questions 
    XLApp.Workbooks[1].Worksheets[1].Range['C1:C5'].NumberFormat := 'dd/mm/yy'; 
    NewAlign := xlHAlignRight; 
    XLApp.Workbooks[1].Worksheets[1].Range['C1:C5'].HorizontalAlignment := NewAlign; 
end; 

分配dd/mm/yy @是沒有意義的,因爲它要麼日期格式dd/mm/yy或文字@,但不能同時使用。

+0

感謝您的答覆。 我不使用VCL TExcelApplication和其他組件(我發現安裝了這個組件,不知道在哪裏可以找到以及如何安裝它。如果你能給我一些建議謝謝你。......我剛開始用delphi) 我用你發佈的代碼,但在運行,我得到這個錯誤: 「無法設置爲類NUMBERFORMAT範圍內的財產」 - 日期 - 和 「無法設置爲類範圍的Horizo​​ntalAlignment屬性」 - 爲xlright 。 對不起,但我是一個初學者... 謝謝 – user2225950

+0

轉到[德博拉帕特的網站](http://www.djpate.freeserve.co.uk/AutoExcl.htm#FormatRange)。它很舊(從德爾福5天左右開始,IIRC),但它仍然有一些關於使用早期和晚期綁定來處理Excel自動化的有用信息。 –

+0

至於如何查找和使用'TExcelApplication',這是一個與*不同的問題。如果你想問一下,發佈一個新問題。 :-) @David:感謝編輯。 –