Excel VBA質問箱 IV

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

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


60110 / 76736 ←次へ | 前へ→

【21277】Re:入力ミスの防止について
お礼  nori E-MAIL  - 05/1/18(火) 11:57 -

引用なし
パスワード
   ▼Jaka さん:
>>If Target.Cells.Count <> 1 Then
>>  If Target.MergeCells = False Then
>>   Exit Sub
>>  End If
>>End If
>>の意味がよくわかりません。
>>なぜ必要なのでしょうか?
>必要なのでしょうか?ってA1:A3までセル結合してあるって事ですから...。
>新規シートに下記コードを書いて、
>
>Private Sub Worksheet_Change(ByVal Target As Excel.Range)
>  MsgBox Target.Value
>End Sub
>
>結合セルに何か入力してください。
>エラーになります。
>
>また、セルを複数選択して同時入力させて見てください。
>エラーになります。
>
>※同時入力
>例えば、複数のセルを選択後に「1」入力後、Ctrl + Ent で同時入力できます。
>
>それで、結合セルは、複数セル選択と同じ扱いになるみたいでしたので、複数セルの同時入力は全て拒否するけど結合セルは、判定させるようにしました。
>
>厳密に言うと、もっと単純でよかったのかもしれませんが、後で操作性の悪さに気づいて、これこれこうしたいですと、細かく追加されるのも嫌なので、独断でこれぐらいはあった方が良いかも程度に追加しました。
>
>操作方法の詳細が解りませんけど、更に細かい使い方に対応させようとすると、もっとコードが更に複雑になります。
>
>因みに複数同時入力が出来ないように作ってはありますが、複数のセルを選択したとき入力セルが左、もしくは上にないと反応しません。
>結合セルが入力セルであるためにこうなってしまったんですが....。
>
>チビッと修正?版
>
>Private Sub Worksheet_Change(ByVal Target As Range)
>  'MsgBox Target.Areas.Count
>  If Target.Column = 1 And Target.Row <= 5 Or _
>    Target.Column = 4 And Target.Row >= 3 And Target.Row <= 8 Or _
>    Target.Column = 6 And Target.Row >= 5 And Target.Row <= 6 Then
>    If Not (Target.Count > 1 And Target.MergeCells = False Or Target.Areas.Count > 1) Then
>     If Val(Target.Cells(1).Value) >= 1 And Val(Target.Cells(1).Value) <= 4 Or _
>      Target.Cells(1).Value = "" Then
>      Exit Sub
>     End If
>    End If
>    MsgBox "NG"
>    Application.EnableEvents = False
>    Application.Undo
>    Application.EnableEvents = True
>  End If
>End Sub

なるほどです。!!
ご親切に指導していただきありがとうございました。

0 hits

【21236】入力ミスの防止について nori 05/1/17(月) 12:00 質問
【21237】Re:入力ミスの防止について Jaka 05/1/17(月) 12:29 回答
【21239】Re:入力ミスの防止について Jaka 05/1/17(月) 12:46 発言
【21241】Re:入力ミスの防止について Jaka 05/1/17(月) 13:15 回答
【21245】Re:入力ミスの防止について nori 05/1/17(月) 14:05 質問
【21248】Re:入力ミスの防止について Jaka 05/1/17(月) 16:49 回答
【21250】Re:入力ミスの防止について Jaka 05/1/17(月) 17:18 回答
【21253】Re:入力ミスの防止について nori 05/1/17(月) 17:53 質問
【21269】Re:入力ミスの防止について Jaka 05/1/18(火) 10:12 回答
【21277】Re:入力ミスの防止について nori 05/1/18(火) 11:57 お礼

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