Excel VBA質問箱 IV

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

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


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

【41471】セルの移動先+一文字 ishii 06/8/11(金) 13:29 質問[未読]
【41473】Re:セルの移動先+一文字 飛ばない豚 06/8/11(金) 14:08 回答[未読]
【41474】Re:セルの移動先+一文字 ishii 06/8/11(金) 14:38 お礼[未読]
【41475】Re:セルの移動先+一文字 ishii 06/8/11(金) 15:01 質問[未読]
【41477】Re:セルの移動先+一文字 飛ばない豚 06/8/11(金) 15:11 回答[未読]
【41479】Re:セルの移動先+一文字 toshi 06/8/11(金) 16:41 お礼[未読]

【41471】セルの移動先+一文字
質問  ishii  - 06/8/11(金) 13:29 -

引用なし
パスワード
   VBAの先生のみなさん
よろしくお願いします。
C列に台と入力(enter)したときにはD列に2が入りG列までセルの移動
し、また台以外の時は普通にD列へ移動したいのですが下記コードに
何かをプラスすれば出来ますでしょうか。
よろしくお願いします。

Private Sub Worksheet_Change(ByVal Target As Range)
  Select Case Target.Column
    Case 3
      Target.Offset(0, 1).Select
    Case 7
      Target.Offset(1, -6).Select
  End Select
End Sub

【41473】Re:セルの移動先+一文字
回答  飛ばない豚  - 06/8/11(金) 14:08 -

引用なし
パスワード
   ▼ishii さん:
>    Case 3
>      Target.Offset(0, 1).Select
    Case 3   'C列に入力
      If Target.Value = "台" Then
        Target.Offset(0, 1).Value = 2
        Target.Offset(0, 4).Select
      Else
        Target.Offset(0, 1).Select
      End If

と、条件分岐処理を入れると良いです。

【41474】Re:セルの移動先+一文字
お礼  ishii  - 06/8/11(金) 14:38 -

引用なし
パスワード
   ▼飛ばない豚 さん:
>>    Case 3
>>      Target.Offset(0, 1).Select
>    Case 3   'C列に入力
>      If Target.Value = "台" Then
>        Target.Offset(0, 1).Value = 2
>        Target.Offset(0, 4).Select
>      Else
>        Target.Offset(0, 1).Select
>      End If
>
>と、条件分岐処理を入れると良いです。
ありがとうございました。バッチリです
こんなに早く解決できてうれしいです。

【41475】Re:セルの移動先+一文字
質問  ishii  - 06/8/11(金) 15:01 -

引用なし
パスワード
   ▼飛ばない豚 さん:
>>>    Case 3
>>>      Target.Offset(0, 1).Select
>>    Case 3   'C列に入力
>>      If Target.Value = "台" Then
>>        Target.Offset(0, 1).Value = 2
>>        Target.Offset(0, 4).Select
>>      Else
>>        Target.Offset(0, 1).Select
>>      End If
>>
>>と、条件分岐処理を入れると良いです。
>ありがとうございました。バッチリです
>こんなに早く解決できてうれしいです。
再度すみません別のコードと組み合わせたらエラーが出てしまうのですが
対処方法を教えて下さい

Private Sub Worksheet_Change(ByVal Target As Excel.Range)

  Dim tg As Range
  Dim fr As Range
  Dim s As String

  If Not Intersect(Me.Range("B2:B65536"), Target) Is Nothing Then
    Set tg = Target.EntireRow.Cells
    s = tg(1).Value & tg(2).Value
    tg(8).Value = s
    Set fr = Me.Columns(8).Find(s, , xlValues, xlWhole)
    If Not fr Is Nothing Then
      Set fr = fr.EntireRow.Cells

      Application.EnableEvents = False
      tg(3).Value = fr(3).Value
      tg(5).Value = fr(5).Value
      Application.EnableEvents = True
      Set fr = Nothing
    End If
    Set tg = Nothing
  End If
    Select Case Target.Column
      If Target.Value = "台" Then
      ~~~~~~~~~~~~~~~~~~~~~~~~~~~ココでエラー
コンパイルエラーSelectCaseと最初のCaseの間のステートメントおよびラベルが
適切ではありません。
        Target.Offset(0, 1).Value = 2
        Target.Offset(0, 4).Select
      Else
        Target.Offset(0, 1).Select
      End If
    Case 7
      Target.Offset(1, -6).Select
  End Select
End Sub

【41477】Re:セルの移動先+一文字
回答  飛ばない豚  - 06/8/11(金) 15:11 -

引用なし
パスワード
   ▼ishii さん:
>    Select Case Target.Column
>      If Target.Value = "台" Then
>      ~~~~~~~~~~~~~~~~~~~~~~~~~~~ココでエラー

Case 3
が抜けているようです。

(もう気付いたかな?)

【41479】Re:セルの移動先+一文字
お礼  toshi  - 06/8/11(金) 16:41 -

引用なし
パスワード
   ▼飛ばない豚 さん:
>▼ishii さん:
>>    Select Case Target.Column
>>      If Target.Value = "台" Then
>>      ~~~~~~~~~~~~~~~~~~~~~~~~~~~ココでエラー
>
>Case 3
>が抜けているようです。
>
>(もう気付いたかな?)
すみませんありがとうございました。
出来ました

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