Excel VBA質問箱 IV

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

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


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

【41634】C列の表示と同じようにE列にも...続き kazuo 06/8/17(木) 22:44 質問[未読]
【41636】Re:C列の表示と同じようにE列にも...続き かみちゃん 06/8/17(木) 23:47 発言[未読]
【41637】Re:C列の表示と同じようにE列にも...続き kazuo 06/8/18(金) 0:03 質問[未読]
【41638】Re:C列の表示と同じようにE列にも...続き かみちゃん 06/8/18(金) 0:15 回答[未読]
【41639】Re:C列の表示と同じようにE列にも...続き kazuo 06/8/18(金) 0:33 お礼[未読]

【41634】C列の表示と同じようにE列にも...続き
質問  kazuo  - 06/8/17(木) 22:44 -

引用なし
パスワード
   皆さんよろしくお願いします。
下記サイトのコードで解決しているのですがセルの移動を追加設定
したく指導お願いします。

http://www.vbalab.net/vbaqa/c-board.cgi?cmd=one;no=41557;id=excel
  A   B  C  D E
1 ○○ ▲▲  m   550

例:○○.▲▲入力enterでC列に自動でm(m以外もあります)が入るのですが
データが入っている場合はそのままD列までセルを移動させデータがない場合には
普通にC列へ移動するようにしたいのですが上記サイトのコードにどのように
加筆してらよいか教授ください。
よろしくお願いします。
   Case 2
    If .Offset(, -1).Value = "" Then Exit Sub
     hinmei = .Offset(, -1).Value
     keijyou = .Value
     GoTo kakuninEvent
上記コードを編集すればイイノかなと思うのですが
よく分かりません。

【41636】Re:C列の表示と同じようにE列にも...続き
発言  かみちゃん  - 06/8/17(木) 23:47 -

引用なし
パスワード
   こんにちは。かみちゃん です。

>データが入っている場合はそのままD列までセルを移動させデータがない場合には
>普通にC列へ移動するようにしたい

すみませんが、なさりたいことが理解できません。
B列を入力するときに、C列やE列がすでに入っていることがありえるのでしょうか?

C列の値が何かあれば、D列に飛ぶコードは、以下のような感じでできると思います。
動作確認は、なさりたいことが理解できないため、していません。
If Cells(Target.Row, 3).Value <> "" Then
 MsgBox "C列に値が入っています。"
 Cells(Target.Row, 4).Activate
End If

【41637】Re:C列の表示と同じようにE列にも...続き
質問  kazuo  - 06/8/18(金) 0:03 -

引用なし
パスワード
   ▼かみちゃん さん:
>こんにちは。かみちゃん です。
>
>>データが入っている場合はそのままD列までセルを移動させデータがない場合には
>>普通にC列へ移動するようにしたい
>
>すみませんが、なさりたいことが理解できません。
>B列を入力するときに、C列やE列がすでに入っていることがありえるのでしょうか?
>
>C列の値が何かあれば、D列に飛ぶコードは、以下のような感じでできると思います。
>動作確認は、なさりたいことが理解できないため、していません。
>If Cells(Target.Row, 3).Value <> "" Then
> MsgBox "C列に値が入っています。"
> Cells(Target.Row, 4).Activate
>End If
かみちゃんまたまた説明が悪くてごめんなさい。
仮に○○・▲▲を入力したときにm(仮に)がC列にはいります。
このときにC列の記入はありませんので次D列までセルは移動していいわけですよね
また□□・△△を入力した場合過去に履歴がなければC列にはなにも入りません
このときはC列でmなり?個なり
を記入する必要がありますのでC列でストップで言い訳です。
いかがでしょうか。

【41638】Re:C列の表示と同じようにE列にも...続き
回答  かみちゃん  - 06/8/18(金) 0:15 -

引用なし
パスワード
   こんにちは。かみちゃんです。

>仮に○○・▲▲を入力したときにm(仮に)がC列にはいります。
>このときにC列の記入はありませんので次D列までセルは移動していいわけですよね
>また□□・△△を入力した場合過去に履歴がなければC列にはなにも入りません
>このときはC列でmなり?個なり
>を記入する必要がありますのでC列でストップで言い訳です。

なさりたいことが理解できました。
やはり、さきほど書いたコードでいいと思います。
具体的には、すでにお使いのコードの最後を以下のようにすればいいと思います。

  '〜省略〜

  'C列に値が入ったかどうかのチェック
  With Cells(Target.Row, 3)
   If .Value <> "" Then
    .Offset(, 1).Activate
   Else
    .Activate
   End If
  End With
 End With
'errEnd:

End Sub

【41639】Re:C列の表示と同じようにE列にも...続き
お礼  kazuo  - 06/8/18(金) 0:33 -

引用なし
パスワード
   かみちゃん ありがとうございました。
うまくいきました(当たり前ですね)
昼間暫く考えcase2のコードの部分を
いろいろ過去例を参考にやってみたのですが
全然違いました。やはりVBAはむずかしいですね。
基本をしらないと駄目みたいですね・・・(-_-;)
今回はこれにて失礼いたします。

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