- 締切済み
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 こういうコードの調べ方がわかりません。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- cj_mover
- ベストアンサー率76% (292/381)
#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)
こんにちは。 とりあえず、何も参照設定していなくても動くように書いておきます。 調べ方、ですが、実際に参照設定してみて、★印以降を実行するのが 簡単で早いかな?と。 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