こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

Excel2007 マクロについて

自分で何とかしようと思い試行錯誤しましたがダメでしたのでご指導のほどお願いします。
今のコードが下記です
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Excel.Range, cancel As Boolean)
If Application.Intersect(Target, Range("F:G")) Is Nothing Then Exit Sub
Application.Goto Worksheets(IIf(Target.Column = 6, "人件費", "外注費")).Range("A65536").End(xlUp).Offset(1)
ActiveCell.Value = Cells(Target.Row, "A").Value
cancel = True
End Sub


台帳シートのF列のセルをダブルクリックするとその列の先頭A列の数字を持って人件費シートが開き 一番新しい列のA列に台帳シートの値を入れる
というコードです
G列では外注費で同じ事が行われます。

それにH列を追加し材料費シートをに同じ事を行いたいのですがわかりません

ご指導のほどお願いします。

投稿日時 - 2015-03-06 12:40:26

QNo.8930213

困ってます

質問者が選んだベストアンサー

IIFは条件が成り立つ時と不成立の時の2パターンだけですから、他の手段を使いましょう。
以下の例ではSelect Caseを使ってみました。

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Excel.Range, cancel As Boolean)
  If Application.Intersect(Target, Range("F:H")) Is Nothing Then Exit Sub
  Select Case Target.Column
    Case 6
      sSheetname = "人件費"
    Case 7
      sSheetname = "外注費"      
    Case Else
      sSheetname = "材料費"
  End Select
  Application.Goto Worksheets(sSheetname).Range("A65536").End(xlUp).Offset(1)
  ActiveCell.Value = Cells(Target.Row, "A").Value
  cancel = True
End Sub

投稿日時 - 2015-03-06 13:29:06

ANo.1

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問