Board logo

標題: [發問] 請教儲存格公式處理另一未開啟檔案內資料的問題~ [打印本頁]

作者: peiruu    時間: 2011-6-14 12:54     標題: [發問] 請教儲存格公式處理另一未開啟檔案內資料的問題~

本帖最後由 peiruu 於 2011-6-14 12:59 編輯

請教版上的前輩,
情形是這樣的,
假設有兩個檔案A.xls與B.xls,
在A.xls上有自訂儲存格公式test,
帶進的參數為B.xls上Sheet1的表格 (範圍Range("A1:A5")),
功能是要查找上面的數值並做計算,
但不知為何在B.xls未開啟的狀態下,
就無法運算呢?
另外試了一下~
連結到B.xls的數值若是做加減乘除&MATCH等公式就可以,
用OFFSET公式就不行,
是因為一樣的原因嗎?
煩不吝賜教~感恩!
作者: mark15jill    時間: 2011-6-14 13:40

回復 1# peiruu

= = 檔案無開啟 你要怎操作?
而且又是加上 你有牽扯到裡面資料更動!?
你可以將該份檔案開啟後 變更 然後 關掉該份檔案
作者: peiruu    時間: 2011-6-14 16:15

本帖最後由 peiruu 於 2011-6-14 16:19 編輯

回復 2# mark15jill

可能是表達不清楚
現在有兩個檔案A.xls & B.xls
A主要是計算用
B是用來當A的資料來源上面表格可以供A寫的公式查找數值
A裡面的公式參數連到B儲存格範圍時
有些公式例如MATCH & VLOOKUP等
在A單獨開啟時可以更新B(此時未開啟)裡面的資料並且計算
可是OFFSET還有自訂函數等公式就不行並出現#VALUE!錯誤值
想了解其中原因而已
並非定要解決這個問題
感恩~
作者: mark15jill    時間: 2011-6-14 17:10

回復 3# peiruu


看了您的說明 只有以下一些想法
依照您說的
B檔案 為 A檔案的來源 沒錯吧
那意思就是說  A檔案 是下游??
如果 你A檔案內 修改任和數據  而不去動到B檔案的話  那 B檔案 的數據 如何更新??
如果今天換個方向來想的話
你A檔案 是 B檔案 的來源  那 一開頭的問題就沒了
懂我的意思嗎???

源頭         下游
B                  A           =>  A改變  B不會改變

A                  B             => A改變  B改變
作者: Hsieh    時間: 2011-6-14 17:32

回復 1# peiruu

OFFSET公式的外部連結是可以使用的,只要你的來源檔案沒移動或刪除應該不會有問題
只是不知道你的公式是怎麼寫的
上傳附件參考看看
作者: peiruu    時間: 2011-6-14 18:18

本帖最後由 peiruu 於 2011-6-14 18:24 編輯

回復 5# Hsieh

Hsieh版大您好~
附件中兩個檔案A & B
裡面有例子使用VLOOKUP即可在A單獨打開時更新B(一直都不開啟)的數值並計算結果在A上
使用OFFSET及自訂函數時就不行(也就是非得開啟B不可)
只是好奇兩種情況其中的差別
還是我哪邊用錯了
還請前輩多多指教~
感恩^^
作者: Hsieh    時間: 2011-6-14 19:15

原來OFFSET跟INDIRECT都一樣,外部連結必須要開啟檔案
原本測試時並未使工作表重算,所以誤以為可以使用外部連結
至於自定義函數那就一定是要開啟來源檔案
因為函數的程式碼是使用儲存格計算,若檔案未開啟,則該引數就會造成指定錯誤
所以沒有辦法做到外部連結
作者: peiruu    時間: 2011-6-14 19:57

回復 7# Hsieh

感謝 Hsieh版大熱心的回復~!!
那可否再請教一下~
若使用過程中不打算開啟B.xls
是否我原本寫的計算就只得改用vba程式碼處理?
還是我自訂函數應該如何修正才可以?
再次感謝您了! ^^




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)