Excel VBA質問箱 IV

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

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


4335 / 13644 ツリー ←次へ | 前へ→

【57256】複数選択された各セルに各々コピー エクセル初心者 08/8/3(日) 1:53 質問[未読]
【57257】Re:複数選択された各セルに各々コピー ichinose 08/8/3(日) 7:36 発言[未読]
【57258】Re:複数選択された各セルに各々コピー エクセル初心者 08/8/3(日) 10:28 お礼[未読]

【57256】複数選択された各セルに各々コピー
質問  エクセル初心者  - 08/8/3(日) 1:53 -

引用なし
パスワード
   はじめまして。初心者です

A1セルには●を表示したいマクロボタンを作りたいのです。
B1セルには○を表示したいマクロボタンを作りたいのです。
●や○のマクロボタン一発で複数選択された各セルに
●や○を複数選択されたセルに各々入力できませんか?

選択するセルの場所や数はいつも決まっていません。
(1シート内の任意場所です)

【57257】Re:複数選択された各セルに各々コピー
発言  ichinose  - 08/8/3(日) 7:36 -

引用なし
パスワード
   ▼エクセル初心者 さん:
おはようございます。

>A1セルには●を表示したいマクロボタンを作りたいのです。
>B1セルには○を表示したいマクロボタンを作りたいのです。
>●や○のマクロボタン一発で複数選択された各セルに
>●や○を複数選択されたセルに各々入力できませんか?

新規ブック(あくまでも新規ブックです)の標準モジュールに

'===========================================================
Sub ボタン作成()
  Dim r As Range
  With ActiveSheet
    Set r = Range("a1")
    With .Buttons.Add(r.Left, r.Top, r.Width, r.Height)
     .Name = "b_black"
     .Caption = "●"
     .OnAction = "set_str"
     End With
    Set r = Range("b1")
    With .Buttons.Add(r.Left, r.Top, r.Width, r.Height)
     .Name = "b_white"
     .Caption = "○"
     .OnAction = "set_str"
     End With
    End With
End Sub
'===================================================================
Sub set_str()
  Dim rng As Range
  Dim bnm As Variant
  Dim mystr As String
  bnm = Application.Caller
  If TypeName(bnm) = "String" Then
    If bnm = "b_black" Then
     mystr = "●"
    ElseIf bnm = "b_white" Then
     mystr = "○"
     End If
    If mystr <> "" Then
     On Error Resume Next
     Set rng = Selection
     If Err.Number = 0 Then rng.Value = mystr
     End If
    End If
End Sub

まず、「ボタン作成」を実行してください。

アクティブシートのセルA1及び、B1にボタンが作成されます。

作成されたボタンをクリックして試してみて下さい。

オセロ? かなあ!!

【57258】Re:複数選択された各セルに各々コピー
お礼  エクセル初心者  - 08/8/3(日) 10:28 -

引用なし
パスワード
   ichinose様

早速のご回答ありがとうございました。
見事に希望どうりの結果を得ることができました。
=======の意味が解らずに2つのスクリプトかと思いまして
上段と下段で分けて記述していて動作せずに少々悩みました。
,
==================から最後のEnd Subまでで一つの
スクリプトだとゆうことをスクリプトの内容をじっくりと読み
エラーメッセージの「Set_Strが見つからない」とゆう事は何?
とゆうことでやっと理解できました。
本当にありがとうございました。
今後は指定セルの位置や表示される○●を変えられるように勉強します

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