iT邦幫忙

0

Excel VBA執行中,為免User重覆開啟同一檔案,可否關掉Excel錯誤訊息上"是"那個按鈕或有其他替代方式?

johnlin0808 4 年前6455 瀏覽

請教各位Excel高手,我在VBA執行中讓User用『開啟舊檔』方式點選舊版檔案及新版檔案,但User 如果二次都點成同一檔案,Excel雖會跳出錯誤訊息,可是如果User 搞不清楚又選"是"重新開啟,會造成當機。
請教可否關掉"是"那個按鈕,不讓User 選,或者還有其他替代方式?
Tks a lot !
john

蟹老闆 iT邦大師 1 級 ‧ 4 年前 檢舉
4
海綿寶寶
iT邦超人 1 級 ‧ 4 年前
最佳解答

用最笨的方法...記錄已開啟的檔名
看看合不合用

<pre class="c" name="code">
Option Explicit
Dim FileAlreadyOpened   '已開啟的檔案
Sub OpenWorkbook()
    Dim FileToOpen      '使用者選擇要開啟的檔案
    FileToOpen = Application.GetOpenFilename(Title:="Please choose a file to import", FileFilter:="Excel Files *.xls (*.xls),")
    
    If FileToOpen = False Then
        MsgBox "未指定檔案", vbInformation
        Exit Sub
    Else
        If FileToOpen = FileAlreadyOpened Then
            MsgBox "檔案已開啟", vbInformation
        Else
            Workbooks.Open FileName:=FileToOpen
            FileAlreadyOpened = FileToOpen
        End If
    End If
End Sub
6
Albert
iT邦高手 1 級 ‧ 4 年前

Excel 不是給企業這樣用

你該用應用系統

不是用 Excel

請洽 : ....

看更多先前的回應...收起先前的回應...
johnlin0808 iT邦新手 5 級 ‧ 4 年前 檢舉

感謝您的回覆!

不過無論如何,總是要盡力嘗試。

發出問題後,經過苦思,有想到一個替代方法如下,希望拋磚引玉,

能由各位高手找出更棒的方法:

替代方法就是,只讓User 選一次檔案,因為舊檔案名稱可能因人而異。

可是新檔案是我提供的,我可以直接設定在程式內,就不用讓User 去選。

只是每次都要去改新檔案名稱,覺得有一點 Low end 的感覺。

不知是否還有大大可以提供更U的方式?

Tks a lot!

john

Albert iT邦高手 1 級 ‧ 4 年前 檢舉

一般 [領料底稿] 我們會拋出 Mail Excel 格式, 給 應該去領料的人
一般 [收料底稿] 我們會拋出 Mail Excel 格式, 給 應該去收料的人
一般 [驗收底稿] 我們會拋出 Mail Excel 格式, 給 應該去驗收的人
一般 [檢貨底稿] 我們會拋出 Mail Excel 格式, 給 應該去檢貨的人
一般 [出貨底稿] 我們會拋出 Mail Excel 格式, 給 應該去出貨的人
......
再將以經填有 [實計數量] UPLOAD 回 ERP
......

Albert iT邦高手 1 級 ‧ 4 年前 檢舉

大大
有 : 財務主管經驗, 有系統分析師經驗
要往 [高階技術] 走才有大路
要用 [企業工具] 走才能整合

我們有千億企業
管理部經理,財務部經理,等相同經驗...
只是我多了
Developer,Founder,
技術轉移顧問
...
歡迎交流

Albert iT邦高手 1 級 ‧ 4 年前 檢舉

財務一般 EQ較高
IQ 部分不太想去發揮
用用 Excel 就好了
我教學妹10次 MDA 架構, 學妹是勤業同學會成員,
學妹(財務長)現在會用 MDA 架構系統
你還只用 Excel ?
........

Albert iT邦高手 1 級 ‧ 4 年前 檢舉

學妹公司有 SAP
但是還是需要
拉到外面結成本再拋回去

Albert iT邦高手 1 級 ‧ 4 年前 檢舉

不過無論如何,總是要盡力嘗試。

土法煉鋼 ... 真是時間多

泥土蓋樓 ... 真是好優閒

johnlin0808 iT邦新手 5 級 ‧ 4 年前 檢舉

感謝albertachen大的關心及抬舉,我並沒有千億企業的經驗,功力也無法和您相提並論。

因目前想做的是給中小企業用的東西,所以用Excel VBA 也是著眼於中小企業多有Excel,

還有現時能力所及的也只有如此。在此得蒙很多大大的幫助與關懷,十分感激,一併致謝!

john

6
外獅佬
iT邦大師 1 級 ‧ 4 年前

阿伯大說的沒錯...Excel是給『單人』用的...

我要發表回答

立即登入回答