Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


67415 / 76732 ←次へ | 前へ→

【13874】Re:コマンドボタンの内容変更について
質問  WAKO  - 04/5/15(土) 17:07 -

引用なし
パスワード
   ▼ちゃっぴ さん:
返信ありがとうございます。
でも、ここで、オブジェクトが必要です。というエラーで落ちてしまいます。
Set objButton = ActiveSheet.OLEObjects.Add _
         (ClassType:="Forms.CommandButton.1", Link:=False, _
          DisplayAsIcon:=False, Left:=108, Top:=14.25, _
          Width:=81, Height:=33.75)


ちなみに私のソースは、

Private Sub Workbook_Open()

  Dim w_シート名  As String
  Dim objButton  As OLEObject
  
  Application.ScreenUpdating = False   '処理画面非表示
  Application.DisplayAlerts = False   '処理画面非表示
  
  w_シート名 = ActiveWorkbook.Name
  
  'Worksheets(1).Select
  'ActiveWorkbook.Worksheets(1).Delete
  
  Workbooks.Open ("C:\WINDOWS\デスクトップ\単品.XLS")
  
  ActiveWorkbook.Sheets("Sheet1").Select
  ActiveWorkbook.Sheets("Sheet1").Copy Before:=Workbooks(w_シート名).Worksheets(1)
  
  Workbooks("単品.XLS").Activate
  ActiveWorkbook.Close
    
  Rows("1:5").Select
  Selection.Insert Shift:=xlDown
  Sheets("Sheet3").Select
  Range("A1:CL5").Select
  Selection.Copy
  Sheets("Sheet1").Select
  Range("A2").Select
  ActiveSheet.Paste
  
  Rows("1:1").RowHeight = 56.25
  
  Range("A1").Select
  
  Set objButton = ActiveSheet.OLEObjects.Add(ClassType:="Forms.CommandButton.1", Link:=False _
    , DisplayAsIcon:=False, Left:=108, Top:=14.25, Width:=81, Height:= _
    33.75).Select
  
  Range("A1").Select

  With ActiveWorkbook.VBProject.VBComponents.Item("Sheet1").CodeModule

    'マクロの 1 行目です。同様に 5 行目まで書き込みます。
    .InsertLines 1, "Private Sub CommandButton1_Click()"
    .InsertLines 2, ""
    .InsertLines 3, " MsgBox ""セルの値が変更されました"""
    .InsertLines 4, ""
    .InsertLines 5, "End Sub"
  End With

  ActiveWorkbook.Save

  objButton.Object.Caption = "エラーチェック"
  
  Application.DisplayAlerts = True   '処理画面非表示
  Application.ScreenUpdating = True   '処理画面非表示

End Sub

です。マクロエクセルにはSHEET2と3しかありません。
いろいろ教えていただいて恐縮ですが、
エラーの原因わかりますでしょうか。
よろしくお願いします。


▼ちゃっぴ さん:
>前のソース間違ってました。削除します。
>
>OLEObjectの個々のオブジェクトを参照するには、Objectプロパティを使用しなければならないみたいです。
>
>  Dim objButton As OLEObject
>  Set objButton = ActiveSheet.OLEObjects.Add _
>         (ClassType:="Forms.CommandButton.1", Link:=False, _
>          DisplayAsIcon:=False, Left:=108, Top:=14.25, _
>          Width:=81, Height:=33.75)
>  objButton.Object.Caption = "sdaf"
>
>この場合だと変数「objButton」は「OLEObject」となりますので「OLEObject」に関連づけられたプロパティのみ取得できます。
>
>「OLEObject」のプロパティにCaptionプロパティは存在しませんので以前のものはエラーとなります。
>「objButton.Object」とすると、このオブジェクトに関連付けられたOLEオブジェクトはCommandButtonですので、ようやくCommandButtonのプロパティを使用できるようになります。

2 hits

【13867】コマンドボタンの内容変更について WAKO 04/5/15(土) 14:27 質問
【13868】Re:コマンドボタンの内容変更について ちゃっぴ 04/5/15(土) 14:55 回答
【13869】Re:コマンドボタンの内容変更について WAKO 04/5/15(土) 15:16 質問
【13873】Re:コマンドボタンの内容変更について ちゃっぴ 04/5/15(土) 16:23 回答
【13874】Re:コマンドボタンの内容変更について WAKO 04/5/15(土) 17:07 質問
【13876】Re:コマンドボタンの内容変更について ちゃっぴ 04/5/15(土) 17:22 回答
【13877】Re:コマンドボタンの内容変更について ちゃっぴ 04/5/15(土) 17:31 回答
【13880】Re:コマンドボタンの内容変更について ちゃっぴ 04/5/15(土) 17:54 発言
【13896】Re:コマンドボタンの内容変更について WAKO 04/5/15(土) 20:59 質問
【13898】Re:コマンドボタンの内容変更について ちゃっぴ 04/5/15(土) 21:59 回答
【13899】Re:コマンドボタンの内容変更について WAKO 04/5/15(土) 22:30 お礼
【13881】Re:コマンドボタンの内容変更について WAKO 04/5/15(土) 17:56 質問
【13884】Re:コマンドボタンの内容変更について ちゃっぴ 04/5/15(土) 18:07 回答
【13885】Re:コマンドボタンの内容変更について WAKO 04/5/15(土) 18:20 お礼
【13886】Re:コマンドボタンの内容変更について WAKO 04/5/15(土) 18:31 質問
【13888】Re:コマンドボタンの内容変更について ちゃっぴ 04/5/15(土) 19:20 回答
【13891】Re:コマンドボタンの内容変更について WAKO 04/5/15(土) 19:30 お礼

67415 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free