• 締切済み

セルをダブルクリックすると色付け&別シートに日付を反映させる方法

趣味でエクセルを扱っているのですが、どうしてもわからないことがあり投稿させてもらいました。 「依頼内容」 (1)該当のセルをダブルクリックすると色付けされる。 (2)クリック後、別シート(実績)の該当セルに対応づけされ、その部分に任意の日付が入力される。 漠然とした内容で申し訳ないのですが、添付ファイルを載せているのでそちらを参考にして頂ければと思います。 (1)はVBAを使用してできたのですが、(2)が出来ずで教えて頂ければ幸いです。

みんなの回答

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.3

>セルをダブルクリックすると イベントと言う考えを使うと思うが(この概念はわかってますか)、セルのイベントはなく、シート・ブック(=各シートどれでも)のイベントしかない。そこにダブルクリックを捉えるイベントは Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Target.Interior.ColorIndex = 6 End Sub で色は着く。 ーーーー Thisworkbookには Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean) End Sub を使って Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean) Target.Interior.ColorIndex = 6 End Sub で色は着くが。 ーー >別シート(実績)の該当セルに対応づけされ、その部分に任意の日付が入力される。 任意なんてプログラムが組めますか? 対応付けされとか、言葉ばかり難しいが意味がわからない。 例えばSheet1のB1セルをクリックすると、実績シートのどこに日付を入れるのかな。対応こそが場合によっては難しい。 Private Sub Worksheet_SelectionChange(ByVal Target As Range) Worksheets("Sheet2").Cells(Target.Row, "B") = Date End Sub をやってみて考えたら。セットされる日付は操作日です。 エクセルVBAはデータ処理に主に使うと便利なものです。VBAの主流をもっと勉強してから質問のようなことは、考えるべきです。

  • hige_082
  • ベストアンサー率50% (379/747)
回答No.2

意味が良くわかりません >(1)はVBAを使用してできたのですが のコードの後に Worksheets("実績").Select 該当セル.Value=任意の日付 漠然とした内容なので、この程度の回答しか出来ません

  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.1

> 漠然とした内容で申し訳ないのですが、添付ファイルを載せているのでそちらを > 別シート(実績)の該当セルに対応づけされ、その部分に任意の日付が入力される。 漠然どころか意味不明です。 ここではファイル添付はできませんのでちゃんと言葉で書いてください。 該当セルとは? 対応付けとは? 「任意」の日付とは? その部分とは?