Board logo

標題: [發問] 自動加入Solver.xla 或 Solver.xlam [打印本頁]

作者: Scott090    時間: 2013-5-11 09:54     標題: 自動加入Solver.xla 或 Solver.xlam

電腦內有EXCEL 2003及 2010 版本,或者說同一workbook檔要在不同的電曩內被使用,它們專屬的 SOLVER版本不同
每次都要人工來做 ADDIN 的動作,很不方便
請教大師先進 有何方法在 Workbook 打開時能自動辨識並 Addin Solver

謝謝
作者: GBKEE    時間: 2013-5-11 14:34

回復 1# Scott090
請複製於ThisWorkbook模組
  1. Option Explicit
  2. Private Sub Workbook_Open()
  3.     Select Case Application.Version
  4.         Case "11.0"   '2003
  5.             AddIns("SOLVER.xla").Installed = True
  6.         Case "14.0"    '2010
  7.             AddIns("SOLVER.xlam").Installed = True
  8.     End Select
  9. End Sub
複製代碼

作者: Scott090    時間: 2013-5-11 20:08

回復 2# GBKEE

感恩指導
1.依照執行會出現超出陣列範圍的錯誤,不知何故
2.solver.xla,solver.xlam 各自被安裝在不同的路徑內,例如 application.path, 因為被叫用的 excel.exe 版本不同
3.加載引用後做確認,是否引用成功;利用讀取引用項來作比對 :
   先取得計數有幾項被引用
      Dim i as integer   
      i = ThisWorkbook.VBProject.References.Count
   則出現 Thisworkbook.VBProject. .... 方法錯誤,找不出問題在哪裡

祈望 GBKEE 大師不吝指點
作者: GBKEE    時間: 2013-5-11 20:49

回復 3# Scott090
  1. Option Explicit
  2. Private Sub Workbook_Open()
  3.     Select Case Application.Version
  4.         Case "11.0"   '2003
  5.             AddIns.Add Filename:="D:\2003\SOLVER.xla"
  6.         Case "14.0"    '2010
  7.             AddIns.Add Filename:="D:\2010\SOLVER.xlam"
  8.     End Select
  9.     AddIns("SOLVER").Installed = True
  10. End Sub
複製代碼

作者: Scott090    時間: 2013-5-11 22:40

回復 4# GBKEE

感謝大師無私的指導
學到了   Addins.add filename:= 全路徑檔名
               Addins().installed =




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