none
請問在visual Studio 2005上使用Excel的問題 RRS feed

  • 問題

  • 各位大大好

                       我在VB6 能用下列的指令做Excel的選擇性貼上..

    mXLSc.Application.Range(K).Select
        mXLSc.Application.Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
            :=False, Transpose:=False
        mXLSc.Application.Application.CutCopyMode = False

                      但是在2005卻不行...因為下列這行指令不能醬用...

    mXLSc.Application.Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
            :=False, Transpose:=False

    請問有哪位大大能教我嗎???

    2006年3月20日 上午 08:06

解答

  • VB.NET 不管是副程式或是函數都要加括號,改成下面那樣試試。

    mXLSc.Application.Selection.PasteSpecial (Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False)

    2006年3月20日 上午 10:00
    版主

所有回覆

  • VB.NET 不管是副程式或是函數都要加括號,改成下面那樣試試。

    mXLSc.Application.Selection.PasteSpecial (Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False)

    2006年3月20日 上午 10:00
    版主
  • Dear 璉璉大大

              感謝您再度替我解答問題,用下面的方法..還是不行,.net 會顯示Paste:=xlPasteValues, Operation:=xlNone  這二個未宣告

    mXLSc.Application.Selection.PasteSpecial (Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False)

    我後來找出來  先宣告 Dim xlPasteValues = Excel.XlPasteType.xlPasteValues

    然後把Operation:=xlNone刪掉...就可以了...

    再次感謝您

    2006年3月21日 上午 01:27
  • 你要直接用常數的話,跟 VB6 一樣,必須在專案中參照 Microsoft Excel Library xx.0 ,否則就會告訴你常數未宣告。

    我自己比較偏向不參照,另外建一個 include 的檔案,把要用的常數宣告在裡面,常數的值你可以用物件瀏覽器、自訂,選擇 Microsoft Excel 後,搜尋指定常數名稱去觀看。

    不過看你有用

    Dim xlPasteValues = Excel.XlPasteType.xlPasteValues

    你應該是有用參照 Excel Library ?

    那試著在前面加上命名空間的宣告看看。

    2006年3月21日 上午 01:36
    版主
  • Dear 大大

                      您真內行...我有參照Excel Library 還有在一開始加上

    Imports Excel = Microsoft.Office.Interop.Excel

    但我不懂您說的 在前面加上命名空間的宣告,還有另外的include的檔案..

    我真的只是個新手...完全自己摸索的....如果可以的話...還是希望您能教教我...謝謝

     

    2006年3月21日 上午 02:11
  • 比如說:

    Imports Microsoft.Office.Interop.Excel.XlPasteType

    就不用宣告 xlPasteValues

    另外插入檔案的作法是說另外開一個 VB 模組(類別可以仿效 OWC 常數作法)

    裡面用 Public Const xlPasteValues = x

    在專案插入這個 VB 模組。

    一般我習慣用手動修改 vbproj 來參照到這個 VB 模組,在 VB.NET 2005 中插入時,預設是複製一個新的,我習慣多個專案共用,就必須手動修改 vbproj 檔,好處是隨著用到的常數慢慢增加,這個檔就會越來越完整,其他專案參照時,可運用的資源就會越來越多。

    2006年3月21日 上午 07:57
    版主
  • 我了解了非常感謝
    2006年3月21日 上午 09:45