2箇所のセル範囲でダブルクリックイベントが上手く出来る様にする為には。 | |
---|---|
[195349] 2箇所のセル範囲でダブルクリックイベントが上手く出来る様にする為には。- ■親トピック/記事引用/メール受信=OFF■ □投稿者/ パンダ -(2022/10/27(15:47)) □U R L/ こんにちは!再びお世話になります。 勤務作成をなるべく便利に使える様にシート名(勤務作成)A4:F8のセル範囲をダブルクリックすると選んだ職員の勤務日の全ての火曜日には数字の1が入力されます。再度、ダブルクリックすると数字の1は空白になります。そこまでは何とかVBAで作る事が出来ました。 問題は更にI4:AM8のセル範囲をダブルクリックのイベントのELSEIF文を加えるとコンパイルエラー「ELSEに対応するIF文がありません」が出てしまいます。どこを修正すると2つのダブルクリックのイベントが出来るかご教授をお願い致します。 A B C D E F G H I J K L M N …AM 1 パターン入力 10月 1 2 3 4 5 6 …31 2 月 火 水 木 金 土 曜日 土 日 月 火 水 木…月 3 1 佐藤 4 2 鈴木 5 3 加藤 6 4 高橋 7 5 伊藤 例)K3のセルをダブルクリックすると数字の1が入力され再度K3のセルをダブルクリックすると空白に戻る様にしたいと思いますが2つ目のダブルクリックのイベントでコンパイルエラーが出てしまいます。 Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) If Not Intersect(Target, Range("A3:F7")) Is Nothing Then Dim i As Long If Target.Value = "" Then Target.Value = 1 For i = 1 To 31 If Cells(2, Target.Column) = Cells(2, i + 8) Then Cells(Target.Row, i + 8) = 1 End If Next i Else: Target.Value = "" Target.Value = "" For i = 1 To 31 If Cells(2, Target.Column) = Cells(2, i + 8) Then Cells(Target.Row, i + 8) = "" End If Next i End If End If Cancel = True ElseIf Not Application.Intersect(Target, Range("I3:AM7")) Is Nothing Then If Target.Value = "" Then Target.Value = 1 Else Target.Value = "" Cancel = True End Sub この記事にはVBAのコードが含まれています。 緑の太文字→注釈 茶色の太文字→条件分岐 赤の太文字→ループ 青の太文字→その他 |
[195353] Re[1]: 2箇所のセル範囲でダブルクリックイベントが上手く出来る様にする為には。- ■記事引用/メール受信=OFF■ □投稿者/ mei -(2022/10/28(09:29)) □U R L/ 基本的な事 If 条件 then 処理 else 処理 end if If 条件 then 処理 elseif 条件 then 処理 elseif 条件 then ←もう1つあった方が解りやすいかなと思って追加 処理 else 処理 end if この記事にはVBAのコードが含まれています。 緑の太文字→注釈 茶色の太文字→条件分岐 赤の太文字→ループ 青の太文字→その他 |
[195356] Re[2]: 2箇所のセル範囲でダブルクリックイベントが上手く出来る様にする為には。- ■ / 記事引用/メール受信=OFF■ □投稿者/ パンダ -(2022/10/28(10:12)) □U R L/ meiさん、おはようございます! ご教授いただきましてありがとうございます。 無事に解決出来ました。 幾度も修正試みてもエラーばかり出てしまい何処をどう修正して良いのか 迷っていました。 |
このトピックに書きこむ |
---|