none
Workbooks.Open filename:="C:\SS\O\" + docname + "" --->OPEN 方法 (Workbook物件)失敗 RRS feed

  • 問題

  • 別人 於OFFICE 2000下開發完VBA ,他有用到 Workbooks.Open filename:="C:\SS\O\" + docname + ""
     於OFFICE 2000 可以正常跑
    但該VBA 拿到 IFFICE 2003要來 RUN 的時候
    就出現 OPEN 方法 (Workbook物件)失敗

    請問 這是為何 ???

    2007年1月19日 上午 07:53

解答

  • 請先參照公告,發文時提出必要資訊。比如說,用 VB6 ?

    若只僅在 Excel 下 VBA 跑,發生錯誤 VBA 會變成黃色,你可以把滑鼠停在 docname 上,看看是否變數值內容正常。

    2007年1月19日 上午 08:12
    版主

所有回覆

  • 請先參照公告,發文時提出必要資訊。比如說,用 VB6 ?

    若只僅在 Excel 下 VBA 跑,發生錯誤 VBA 會變成黃色,你可以把滑鼠停在 docname 上,看看是否變數值內容正常。

    2007年1月19日 上午 08:12
    版主
  • 不好意思
    我是 用EXCEL 的VBA

    我看過 黃 色部份 裡面的確有 FILENAME 有值??

    2007年1月19日 上午 09:04
  • 那你試試看在 VBA IDE 環境下方的 即時視窗

    輸入:

    Workbooks.Open filename:="D:\Path\Uesr.xls"

    看看。

    請注意,所選擇的檔案,應為該 Excel 使用者有權限存取的檔案,例如你的

    "C:\SS\O\" & docname

    這個位置中,必須檔案可供該位使用者存取。

    2007年1月19日 上午 09:19
    版主
  • 出現 以下訊息

    執行階段錯誤 1004
    應用程式或物件上定義錯誤


    有些 EXCEL2000  可以讀
    有些 無法讀
    另外 有些EXCEL2003 也無法讀 ???
    2007年1月22日 上午 01:31
  • 你開一個空白的 Excel 在 VBA IDE 環境下測試是否正常?

    發生應用程式或物件上定義錯誤通常只會發生在 VB6/VBNET 這種,並跨版本引用了不正確的型別程式庫。

    請在 VBA IDE 環境下,選單 工具 設定引用項目 基本上預設值會有四個,你是發生在 Workbooks.Open 上,所以請看一下 Microsoft Excel x.0 Object Library 是否正確或被標記遺漏。

    Excel 2000/XP/2003 應對應 9.0/10.0/11.0

    若版本錯誤,請重新手動選擇。

    2007年1月22日 上午 01:53
    版主
  • 以我的版本來講 我用EXCEL2003 ,且我看 引用項目也事 EXCEL11
    但 我 用 Workbooks.Open filename:="C:\SS\CC\AA.xls"

    他就出現 ERROR
    但我若開另一個檔案,卻可以開啟

    另外 我把 AA.xls 拿到 EXCEL2000 上去跑
    大都可以RUN
    但還是有一台 會出現ERROR
    且 我看他引用項目 EXCEL仍為11(應該為9才對)
    可是 我卻找不到 9 可以引用
    2007年1月22日 上午 02:08
  • VBA 這個型別程式庫要對軟體版本,版本不對會無法正確識別所引用的物件。

    我直接在一個空白的 Excel 2003 試是正常的。

    2007年1月22日 上午 02:14
    版主