• 締切済み

vbaで参照設定

Dim Ref As Reference 'Excel Set Ref = References.AddFromGuid("{00020813-0000-0000-C000-000000000046}", 1, 7) 'ADODB Set Ref = References.AddFromGuid("{2A75196C-D9EB-4129-B803-931327F72D5C}", 2, 8) このような感じで、vbaで参照設定をしているのですが、 Microsoft Forms 2.0 Object Library へ、vbaで参照設定をしたい場合、どうなりますか? 今は、 http://www.moug.net/tech/acvba/0020034.html のやり方で手作業で参照設定していますが、 vbaでのやり方が知りたいです。 {00020813-0000-0000-C000-000000000046}", 1, 7 こういうコードの調べ方がわかりません。

みんなの回答

  • cj_mover
  • ベストアンサー率76% (292/381)
回答No.2

#1、cjです。 ExcelじゃなくてAccessのようですね?失礼しました。 調べ方。実際に必要な参照設定をしてから、続けて以下を実行します。 /// Sub Re8686544_GetArgs() ' access   Dim Ref As Reference ' ' 一旦、必要な参照設定を済ませてから、実行   Set Ref = References(References.Count)   With Ref     Debug.? "Name = "; .Name     Debug.? "Guid:="""; .Guid; """, ";     Debug.? "Major:=" & .Major; ", ";     Debug.? "Minor:=" & .Minor   End With End Sub /// MeForms2.0を参照設定する方法。(改)二重に設定しないように。 /// Sub Re8686544_AddRef_() ' access   Dim Ref As Reference   For Each Ref In References     If Ref.Name = "MSForms" Then       If Ref.Major = 2 And Ref.Minor = 0 Then         MsgBox "既に参照済でした"         Exit Sub       End If     End If   Next   Set Ref = References.AddFromGuid("{0D452EE1-E08F-101A-852E-02608C4D0BB4}", 2, 0) End Sub ///

  • cj_mover
  • ベストアンサー率76% (292/381)
回答No.1

こんにちは。 とりあえず、何も参照設定していなくても動くように書いておきます。 調べ方、ですが、実際に参照設定してみて、★印以降を実行するのが 簡単で早いかな?と。 Sub Re8686544_GetGuid()   Dim Ref As Object ' Reference   Worksheets(1).OLEObjects.Add("Forms.Label.1").Delete   With ThisWorkbook.VBProject.References ' ★     Set Ref = .Item(.Count)   End With   With Ref     Debug.Print "Name = "; .Name     Debug.Print "Guid:="; .GUID; ", ";     Debug.Print "Major:="; .Major; ", ";     Debug.Print "Minor:="; .Minor   End With End Sub Sub Re8686544_AddRef()   Dim Ref As Object 'Reference   Set Ref = ThisWorkbook.VBProject.References.AddFromGuid("{0D452EE1-E08F-101A-852E-02608C4D0BB4}", 2, 0) End Sub