2016-08-03 9 views
0

私の最初のユーザーフォームがデータテーブルテンプレートに近づいています。セルを投入するときに、すべてのT/F値をユーザーフォームから数値に変換します。

しかし、私はどのように私は自分のシートにユーザーフォームの選択から "True"を返すようにこのデータをピボットしようとしているのかと疑問に思う& "False"の値。

私が必要とする平均値/合計値を得るための私の唯一の考えは、値がそれぞれ1 &に変わることです。シート上にデータを入力する前に、チェックボックスの真偽値をすべてこのコードにコードする方法はありますか?または、各ボックスの値を手作業で変更して宛先セルに1または0を入れる必要がありますか?あなたが想像できるように。

ex。 "desired cell range".Value = checkbox1.Value

どのようなものがデータテーブルに挿入されているかの例(35行)。 enter image description here

+0

を、あなたは、いくつかの詳細を追加する気にしませんか? – user3598756

答えて

1

checkbox1.Valueは、Booleanを返します。番号にキャストする場合は、CInt()(またはCLng())を使用してください。 VBAはFalseTrueなど-1として0を扱いますので、あなたがあなたの平均値/合計はポジティブになりたい場合は、絶対値が取る:

{desired cell range}.Value = Abs(CInt(checkbox1.Value)) 
+0

お返事ありがとうございました。しかし、すべての価値を伴ってコード化する方法はありませんか?私には35種類の基準があり、その大部分はチェックボックスです。 それぞれを書き直す必要がある場合は、ボタンクリックまたはユーザーフォームの最初と最後に何かを貼りつけることができればと思っていました。 – Awill

+0

@Awill - あなたがコントロールの配列のようなものを使用していない限りはありません。後ですべてのセル*を更新することはできますが、それはひどく非効率的です。正規表現の検索と置換を行うエディタにコードをコピーして貼り付けるだけで、すべてを狩りたくない場合はすばやく作業する必要があります。 – Comintern

関連する問題