- ベストアンサー
Excelマクロのコードをお教え下さい
- Excelマクロのコードをお教えください。マクロの初心者ですが、会社での業務効率UPのためにマクロを組もうとしています。アドバイスをお願いします。
- Excelマクロのコードをお教えください。数百行の表を元に、特定の条件を満たす行を抽出し、隣のシートの指定セルに反映させたいです。マクロ初心者で、ごちゃごちゃしたコードになるのでアドバイスをお願いします。
- Excelマクロのコードを教えてください。オートフィルタを使って特定の条件を満たす行を抽出し、隣のシートの指定セルに反映させたいです。右クリックするだけでチェックボックスが現れてチェックが入る方法も知りたいです。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
チェックボックスを使わない方法です。 下記のコードは右クリックでセルに●を付けたり消したりできます。 Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean) If Target.Column = 1 Then If Target.Value = "●" Then Target.Value = "" Else Target.Value = "●" End If Cancel = True End If End Sub
その他の回答 (2)
- hige_082
- ベストアンサー率50% (379/747)
差し出がましいようですが >(なんかもう丸聞きみたいなもので大変申し訳ないのですが;) ご自分でも言われていますが、丸投げだと思います 丸投げはここではルール違反です 禁止事項を一読されては如何でしょう 質問からは、チェックボックスの必要性、マクロの必要性が感じられません オートフィルターでB列(ファイル)、C列(フラット)の順で抽出して 抽出されたものをコピペで終わりでは? マクロでと言うことであれば マクロの記録を試してください 質問の操作をマクロの記録で記録してみて、分らないコードを質問されては Sheet1にある表に オートフィルタで抽出し 抽出されたものをコピー Sheet2へ貼付 この操作をマクロの記録で記録したものです Sub Macro1() ' ' Macro1 Macro ' マクロ記録日 : 2009/7/10 ユーザー名 : xxxx ' ' Range("A1").Select Selection.AutoFilter Selection.AutoFilter Field:=1, Criteria1:="ファイル" Selection.AutoFilter Field:=2, Criteria1:="フラット" Range("A2:C5").Select Selection.Copy Sheets("Sheet2").Select ActiveSheet.Paste Application.CutCopyMode = False End Sub
お礼
ご回答ありがとうございます。 お返事が遅れまして申し訳ございませんでした。 ご指摘いただいたように、自分の行ってみたコード等を示した上で質問を行うべきでした。 禁止事項をもう一度読んでおきます。 チェックボックスに関しては、分かりやすいように表を簡略化して乗せましたので、実際は品名等がもっと多く複雑になっております。 毎回オートフィルタを操作する回数を減らすためにチェックボックスの利用を考えていました。 教えていただいたコードはコピーの時に参考にさせていただきたいと思います。 ありがとうございました。
- turuzou
- ベストアンサー率33% (15/45)
参考として、ご存知ならご免なさい。 フォーム コントロール(チェック ボックス、オプション ボタン) http://www.kenzo30.com/ex_kisotoku/ex_ks_tokubetu9_x2.htm# チェックを入れるには、オートフィルたで絞込み、可視セルで、例えば上記の、リンクするセルの、値を、変化させれば良いのではないでしょうか?
お礼
ご回答ありがとうございます。 お返事が遅くなり申し訳ございませんでした。 教えていただいたサイト様、勉強になりました。 詳しく載っていてうれしかったです! リンクセルの値の変更を試してみたいと思います。 ありがとうございました!
お礼
ご回答ありがとうございます。 お返事が遅れまして申し訳ございません。 本日会社のデータで試してみたところ、うまく表示されるようになりました。 チェックボックスを使わずにこういう方法もあるんですね! 勉強なりました! ありがとうございました。