アプリ版:「スタンプのみでお礼する」機能のリリースについて

ネットで ダブルクリックでエクセルのセルに色を付ける方法は例えば
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
With Target.Interior
If .ColorIndex = xlNone Then
.ColorIndex = 4
Else
.ColorIndex = xlNone
End If
End With
Cancel = True
End Sub

だというが、BVAのどこに貼り付けるのですか、どこからはいればいいのでしょうか。初心者でVBAの使い方わかりません。また 特定のシート別にそれぞれ記述するのにはどうすればいいのでしょうか・。ご教授ください。

A 回答 (3件)

>特定のシート別にそれぞれ記述するのにはどうすればいいのでしょうか



画面下のシート・タブを右クリックすると、「コードの表示」というところがありますから、そこをクリツクして貼り付ければよいです。

もし、ブック全体に適用したれば、プロジェクトウィンドウ(エクスプローラ状になっている窓ょで
ThisWorkbook という項目がありますから、それをダブルクリックで開けて、

'//
Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
With Target.Interior
If .ColorIndex = xlNone Then
 .ColorIndex = 4
Else
 .ColorIndex = xlNone  'xlColorIndexNone --左と同じだけれど、可読性のためにこれを使います。
End If
End With
Cancel = True
End Sub
'//

直接、ご質問者さんには関わりないことだとは思いますが、ちょっとコメントを残しておきます。

まともな経営者でしたら、VBAの作業効率と手作業とを、労働生産性を秤に掛けて、どちらが得かぐらいの計算は分かるでしょう。今どきは、ほとんど禁止していという企業などはないとは思います。過去、私が見聞きした、VBAを禁止する理由が偏見や噂だけで、誤解していることも多いようです。

ExcelのVBAを禁止すれば、ウィルスを防止できるなど、バカバカしいほど勘違いしている人もいます。Excelには、単に、Anti-Virus API が組み込まれているだけで、Excelはどのバージョンもサポートあるなしに関わらず、単独で防止することなどはできません。Anti-Virus アプリが起動されるかどうかの違いです。そうした経営者とは、まともに話合っても無駄な時間なことも多いです。

No.2さんの
>VBAのプログラムの動作を禁止していることも多いので、プログラムを追加したら、マクロ付きの拡張子(.xls)で保存しましょう。

それで、マクロチェックを逃れられることはありません。最近、再び発見された、Excel ウィルスは、Ver.4 マクロ関数を使ったものですが、それも、マクロチェックを受けます。もしマクロチェックをパスさせるのでしたら、CA認証のデジタル署名を組み込めばよいです。

Excelのファイル構造で、拡張子がどうであれ、マクロは検知できます。xls拡張子に保存することは、ファイル全体をバイナリー状態にするので、壊れた時に復旧しにくくします。Excel 2007以上では、Excelは、xml ファイルをZIP圧縮していますが、マクロの部分だけはバイナリーになっています。Excel 2007 以上では、共通型のxlsb という拡張子は、全部、バイナリー型にしますから、その分、壊れやすくなります。
    • good
    • 0
この回答へのお礼

できました。ありがとうございました。そうですよね。エクセルマクロを使っている人 本当に少ない。もったいないですよね。

お礼日時:2019/03/17 18:32

エクセルVBAは、「ALT+F11」で、まずVisual Basicの画面を呼び出して、そこで編集用画面にプログラムを貼り付けていきます。


通常、VBAって、シートに何かのボタン等を貼り付けて、それをクリックすることで呼び出す作りにします。
あるいは、フォームを作成して、そのフォームでいろいろ入力したりします。

普通のシートのセルをダブルクリックして、何かの動作をさせることは、あまりやりません。
ただ、やってみたいなら、Visual Basicの左側に表示された「Sheet1(SAheet1)」をダブルクリックし、編集用の白い画面が右に表示されたら、そこにプログラムを貼り付けると、Sheet1で、そのプログラムが動作します。

なお、エクセルのセキュリティで、VBAのプログラムの動作を禁止していることも多いので、プログラムを追加したら、マクロ付きの拡張子(.xls)で保存しましょう。
    • good
    • 0
この回答へのお礼

できました。ありがとうございました

お礼日時:2019/03/17 18:32

あいうえお

    • good
    • 0
この回答へのお礼

できました。ありがとうございました

お礼日時:2019/03/17 18:32

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!