『チェックボックス利用の転記』(yas) ユーザーフォームではなく、シートで様式(フォームシート)を作成しています。 マクロ登録による登録ボタンを押すと、入力したシート自体がコピーして蓄積され、なおかつ同じブックの別シートであるデータリストシートにもデータが転記・蓄積されるようなものを目標に作成しています。(年間30件ほどしか発生しないもの) 転記で躓いています。 フォームシートのE6、F6、G6にフォームコントロールのチェックボックスを配置し、E6には あか、F6には あお、G6には きいろ と直接入力。 同時に複数を選択することはありません。 フォームシートE6、F6、G6内チェックボックスでチェックしたものを、 登録ボタンを押した時に、フォームシートE6、F6、G6に入力してある あか、あお、きいろ がデータリストシートのG列(3行目以降)に転記されるようにしたいです。 フォームシートの全くの枠外でチェックボックスのリンクセルを作成し、 TRUE/FALSEで判別して転記する方法をネットで見つけ、なんとかしてみようと思いましたが、なんとなく二度手間?なのかなと思いまして、一度枠外で処理せずにE6、F6、G6で処理できる方法はありますでしょうか。 < 使用 Excel:Excel2013、使用 OS:Windows7 > ---- G列を範囲選択してから、「データ」−「データの入力規則」で「リスト」を選び、元の値として =D6:F6 を指定するだけでは? そして、もし文字列に応じて色を付けるならば、条件付き書式で行えばよいです。 (???) 2017/05/23(火) 11:59 ---- もはや誰も使わない/使えないソフトで作成されたものを、 どのPCでもいじれるエクセルに転換することになりました。 元々その様式を管轄していたのが何もわからないようなオジサマなので、 極力見た目を変えたくないのです。 リストにするとE6〜G6で興味からいくつも選んでしまって、 空白に戻さないことが大いに考えられるので、 チェックボックス+セルの値を読み込んだ転記ができればと思っています。 今までがチェックボックスでしたので、間違えたチェックを外すという認識はあります。 直接の転記はやはり難しいものでしょうか。 (yas) 2017/05/23(火) 13:07 ---- まず、チェックボックスコントロールには2種類あって、フォームのコントロールとActiveXのコントロールがありますが、フォームのコントロールの方ですね? フォームのコントロールであるとすると、セルにリンクせずとも、コントロールの値を直接調べる事で、チェックが入っているのかどうかを調べる事ができます。こちらをお望みですかねぇ? チェックし、転記先を指定し、登録ボタンを押す、という3段階指定であり、セルのコンボから1つ選ぶだけの方が簡単かと思ったのですが。(複数選択の考慮も不要) とりあえず、マクロで activesheet.checkboxes("check box 1").value の値を調べてみてください。xlOn(1)ならばチェックで、xlOff(-4146)なら未チェックです。 (???) 2017/05/23(火) 14:01 ---- 確かにそうですね! 関連他社ともほぼ同じ様式(見た目)を使用しているので チェックボックスに執着してしまいましたが、 確かにPC操作が達者ではない場合は選択する方がラクですね。 "ほぼ"を拡大して、ソチラにしてみます。 そして、せっかく教えていただいたので、 個人学習としてチェックボックスでの転記も進めてみます。 チェックボックス1がxlOn(1)なら「あか」と入力 チェックボックス2がxlOn(1)なら「あお」と入力 のような式を、転記先セルに入れておく感じでしょうか。 煮詰まった考えに発想を転換していただき、ありがとうございました。 (yas) 2017/05/23(火) 14:16 ---- オプションボタンは使わないのですか? (コナミ) 2017/05/23(火) 14:24 ---- コナミさま オプションボタンを、今試してみました。 ネットで調べたところ、やはり別のセルに選択の結果を表示させる方法のようでした。 チェックボックスにしろオプションボタンにしろ、 1段階別に表示することは絶対ということなのですね。 今回の場合、複数選択がされないオプションボタンの方がチェックボックスより適しているようです。 結果を別のセルに表示させ、 別シートのリストのセルに、 「1」なら「あか」と入力、「2」なら「あお」と入力、「3」なら「きいろ」と入力 の式を入れてみたいと思います。 ・・・という解釈で合っていますでしょうか。 (これからやってみます) (yas) 2017/05/23(火) 15:28