• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Excelのマクロで選択範囲内の数値の合計をクリップボードにコピーする)

Excelマクロで選択範囲内の数値の合計をクリップボードにコピーする方法

このQ&Aのポイント
  • Excelのマクロを使用すると、選択範囲内の数値の合計をクリップボードにコピーすることができます。
  • ただし、このマクロを呼び出すたびにエラーが発生し、手動で「Microsoft Forms 2.0 Object Library」を参照設定する必要があります。
  • マクロ内で「Microsoft Forms 2.0 Object Library」を自動で参照設定する方法はありませんか?

質問者が選んだベストアンサー

  • ベストアンサー
  • jcctaira
  • ベストアンサー率58% (119/204)
回答No.1

参照設定が消えてしまうのですか? 一応下記で対応ができると思います。 ※すでに参照設定されている場合はエラーになります。   On Error Resume Next 命令を入れた方が良いかも知れません。 ※参照設定はフルパスで指定しますので、OSや環境により変わるかも知れません。   Sub 参照設定()  ThisWorkbook.VBProject.References.AddFromFile ("C:\Windows\system32\FM20.DLL") End Sub

その他の回答 (1)

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.2

以下のようにすれば、クリップボード・オブジェクトを作れます。 一般のクリップボードを使いたければ、Win32 APIのほうが便利かもしれません。 '// Public myData As Object Sub SumCopyR()  Const clsid_DATAOBJECT As String = "1C3B4210-F441-11CE-B9EA-00AA006B1A69"  If myData Is Nothing Then   Set myData = CreateObject("new:" & clsid_DATAOBJECT)  End If  myData.SetText Application.WorksheetFunction.Sum(Selection), 1  myData.PutInClipboard End Sub '// ClassID は、以下のようにして検索しました。 検索語:DataObject HKEY_CLASSES_ROOT\CLSID\{1C3B4210-F441-11CE-B9EA-00AA006B1A69} Microsoft Forms x.x DataObject (こちらは、RegSeekerを利用)

関連するQ&A

専門家に質問してみよう