• ベストアンサー

○を入力 教えてください

エクセルで食数表を作成しています。 出勤日に○を入力したいのですが ワンクリックで○が表示されてまたクリックすると ○印が消えるような設定はあるのでしょうか? よろしくお願いいたします。

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

  • ベストアンサー
  • ja7awu
  • ベストアンサー率62% (292/464)
回答No.4

回答番号:No.1 のコードですと B列 でなくても ○ が付いてしまうと思いますよ。   あと、Cancelの操作も必要かと・・・ こんな感じで如何ですか。 Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) If Target.Column = 2 Then   If Target.Value = "○" Then     Cancel = True     Target.Value = ""   Else     Target.Value = "○"     Cancel = True   End If End If End Sub

kaop8300
質問者

お礼

こんなのできたらいいのにな!の操作ができるなんて 感激です!!ありがとうございました。

その他の回答 (3)

  • kouji_124
  • ベストアンサー率46% (283/605)
回答No.3

ワンクリックとは行きませんが、私が良く使う方法を紹介します。 「セルの書式設定」→「表示形式」で「ユーザー定義」を選択し「種類」に「"○";;」と入力します。 こうすると、対象のセルに1以上の数が入力されると「○」と表示し、対象のセルが空白や0、マイナスの数の場合は対象のセルが空白になります。 書類を作成する時に、○を多数入れる場合に便利です。 因みに、ユーザー定義で「"○";"×";」と入力すると、1以上の時は「○」マイナスの時は「×」空白や0の時は空白になります。

kaop8300
質問者

お礼

参考になります!ありがとうございます。

回答No.2

ワンクリックでということであれば、チェックボックスを作成すれば良いのではないでしょうか。

kaop8300
質問者

お礼

そういう方法もあるのですね。 ありがとうございます。

  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.1

VBA使用しますけど、宜しいでしょうか。 シート名の名前のタブを右クリックして コードの表示 をクリック、VBエディターを開く Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) If Target.Column = 2 And Target.Value = "○" Then Target.Value = "" Else Target.Value = "○" End If End Sub をコピィして、閉じる 上記のコードでは、2列目(B列)をダブルクリックすると 質問の動作になると思います。 列を変更するには Target.Column = 2 の数字(2)の部分を変更してください。

kaop8300
質問者

お礼

すごい!! できました〰。大感激です。 ありがとうございました。

関連するQ&A