advanced help
per page, with , order by , clip by
Results of 1 - 1 of about 978 for チェックボックス (0.008 sec.)
[[20220812163434]]
#score: 5499
@digest: b2654873c0e28d2f314004a5a6faa2a8
@id: 92005
@mdate: 2022-08-12T14:43:14Z
@size: 3742
@type: text/plain
#keywords: cbx (10268), checkboxes (8773), ムコ (6664), クボ (6609), xlon (5700), ンオ (5427), 数xl (5317), ク1 (3680), トロ (3574), イタ (3534), xloff (3476), activex (3127), ナイ (2800), caller (2360), checkbox1 (2313), チェ (2227), ェッ (2017), オン (1965), cell (1877), オフ (1812), ボッ (1785), 月", (1753), 連動 (1670), ロー (1658), コン (1654), ック (1556), 月" (1532), クス (1433), month (1278), ロ内 (1075), ォー (1067), activesheet (1034)
チェックボックスのオンオフで、特定セルへの文字列の表示を切り替える手法』(ナイター)
フォームコントロールのチェックボックスとVBAを用い、チェックボックスのオンオフに連動して特定のセルに特定の文字列を表示したり非表示にしたりする方法がどうしても掴めません。 下記のようなVBAを組んでみたのですが、うまくいきません。 Sub test() Dim month As String Dim cell As Range Dim cbx As Object month = "1月" Set cell = Worksheets(1).Range("A1") Set Object = "Check Box 1" If cbx.Value = True Then cell = month Else cell = "" End If End Sub 恥ずかしながらVBAは初心者なもので、どれだけ調べてもうまく動かないのでご助力願いたいです。 A1に =If(チェックボックスのリンク先セル=true,”1月”,””) みたいな数式を入れておけば簡単なのは理解しております。 今回はVBAを使用したい環境のため、どうかお力添えください。 < 使用 Excel:Office365、使用 OS:Windows10 > ---- >Set Object = "Check Box 1" Object は cbx の間違いですよね。 (?) 2022/08/12(金) 17:49 ---- >チェックボックスのオンオフに連動して とのことなのでチェックボックスにマクロを登録します。 チェックボックスを右クリックして「マクロの登録」から「新規作成」をクリックします。 標準モジュールに下記のような雛型ができるので、 Sub チェック1_Click() End Sub これに下記のようなコードを挿入します。 Sub チェック1_Click() Dim Month As String Dim cell As Range Dim cbx As Object Month = "1月" Set cell = ActiveSheet.Range("A1") Set cbx = ActiveSheet.CheckBoxes(Application.Caller) If cbx.Value = xlOn Then cell = Month Else cell = "" End If End Sub これでチェックボックスのクリックに連動してセルの値が変更されます。 注意点としては、 フォームコントロールのチェックボックスの Value はBoolean型でなく、 定数 xlOn, xlOff で判断します。 フォームコントロールに登録したマクロ内では、 Application.Caller でクリックしたコントロールの名前を取得できます。 これで、チェックボックスを特定して取得できます。 (hatena) 2022/08/12(金) 17:52 ---- 横からですが、そのシート上に配置した、ActiveXコントロールのチェックボックスじゃダメですかね。 そちらならBoolean型ですから↓のようにできそうですが・・・ Private Sub CheckBox1_Click() Range("A1").Value = IIf(CheckBox1, Month(Date), "") End Sub (もこな2) 2022/08/12(金) 18:39 ---- 参考です。 Sub CheckOn() ActiveSheet.CheckBoxes(1).Value = xlOn Range("A1").Value = "1月" End Sub Sub CheckOff() ActiveSheet.CheckBoxes(1).Value = xlOff Range("A1").Value = "" End Sub (?) 2022/08/12(金) 19:08 ---- 質問者のコードをなるべく尊重して回答したが、 下記のように1行で書くことも可能です。 Sub チェック1_Click() Range("A1").Value = IIf(ActiveSheet.CheckBoxes(Application.Caller)=xlOn,"1月","") End Sub フォームコントロールとActiveXコントロールの使い分けですが、 自分の場合は、 そのシートでしか使わないならActiveXコントロール、 複数のシートの複数のチェックボックスで共通する処理なら、フォームコントロール としてます。 (hatena) 2022/08/12(金) 21:02 ---- Sub チェック1_Click() Range("A1").Value = IIf(ActiveSheet.CheckBoxes(1) = xlOn, "1月", "") End Sub (?) 2022/08/12(金) 21:30 ---- 皆さま、暖かい回答ありがとうございます。 具体的なコードを何パターンか明示していただき、試しがいがあります。 いずれかも試行してみて、一番やりやすいものを実装してみようと思います。 ActiveXとフォームコントロールの使い分けについてはまだ何も考えておらず、上の段にあるからフォームコントロールを使っておりましたが,こちらはもう少し調べてみます。 作業環境的に月曜まで動かせないので、今この場ではうまくいったか返答できず申し訳ないところです。 引き続きご教授お願いいたします。 (ナイター) 2022/08/12(金) 23:43 ...
https://www.excel.studio-kazu.jp/wiki/kazuwiki/202208/20220812163434.txt - [detail] - similar
PREV NEXT
Powered by Hyper Estraier 1.4.13, with 97038 documents and 608190 words.

訪問者:カウンタValid HTML 4.01 Transitional