Excel VBA質問箱 IV

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

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


13449 / 76732 ←次へ | 前へ→

【68788】Re:EventMacroで以外はの処理をお聞かせください。
発言  kanabun  - 11/4/17(日) 21:14 -

引用なし
パスワード
   ▼Yoshi さん:

>最終のコードでは正しく動作します。

前後しますが、
-------------------------------
>Case Else
> .ClearContents
>を入れると、1を入れても2を入れてもクリアされます。
>7以上は空白のまま残したいのですが、

この件は、UO3 さんからコメントのあるように、
「1〜6 以外何もしない」なら、下記の Case Else部分を全部削除すればいい
と思います。
>  With Target(1)
>    Select Case .Value
>     Case 1 To 6
>       .Value = Mid$("◎○△▲*×", .Value, 1)
     'Case Else
     '  .ClearContents
>    End Select
>  End With
のように。

そうすると、残るのは
>  With Target(1)
>    Select Case .Value
>     Case 1 To 6
>       .Value = Mid$("◎○△▲*×", .Value, 1)
>    End Select
>  End With
となりなす。

-----------------------------
>  .Value = Mid$("◎○△▲*×", .Value, 1)
>の理解が出来ません。
>どのように理解すると良いのでしょうか?

>  With Target(1)
   ↑ Target(1) というのは
     変更のあったセル範囲のうちの最初のセルのことです。

     ↓このセルの値(.Value) が 1〜6の範囲にあったら、
>    Select Case .Value
>     Case 1 To 6

        ↓そのセルの値を "◎○△▲*×"という文字列のうち
         元の値の位置の1文字だけとりだしたものに変更する
         という処理をしています。
>       .Value = Mid$("◎○△▲*×", .Value, 1)
>    End Select
>  End With

具体的には、
変更のあったセルの値が 1 なら、
>       .Value = Mid$("◎○△▲*×", .Value, 1)

       .Value = Mid$("◎○△▲*×", 1, 1)
ということですから、
"◎○△▲*×" の最初の1文字 "◎" がそのセルに代入されます。

変更のあったセルの値が 2 なら、"◎○△▲*×"の2番目の文字"○"が
元のセルに代入されます。
以下同様にして、
変更のあったセルの値が 6 なら、"◎○△▲*×"の2番目の文字"×"が
元のセルに代入されます。

ということです。

0 hits

【68705】EventMacroで以外はの処理をお聞かせください。 Yoshi 11/4/9(土) 11:08 質問
【68706】Re:EventMacroで以外はの処理をお聞かせく... kanabun 11/4/9(土) 11:16 発言
【68712】Re:EventMacroで以外はの処理をお聞かせく... UO3 11/4/9(土) 15:10 発言
【68715】Re:EventMacroで以外はの処理をお聞かせく... kanabun 11/4/9(土) 17:51 発言
【68787】Re:EventMacroで以外はの処理をお聞かせく... Yoshi 11/4/17(日) 20:17 質問
【68788】Re:EventMacroで以外はの処理をお聞かせく... kanabun 11/4/17(日) 21:14 発言
【68789】Re:EventMacroで以外はの処理をお聞かせく... kanabun 11/4/17(日) 21:16 発言
【68800】Re:EventMacroで以外はの処理をお聞かせく... Yoshi 11/4/18(月) 20:58 お礼

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