●EXCEL・VBAの教えて ..
[
2ch
|
▼Menu
]
■コピペモード
□
スレを通常表示
□
オプションモード
□このスレッドのURL
■項目テキスト
84:79 07/01/27 11:00:26 >>80 さっそくの回答ありがとうございます ですがcontrols("checkbox"&i)ではエラーになりました(subまたはfunctionが見つかりません) もしかしてワークシート上に直接配置したcheckboxだとダメですか? 実際には900行×20列の表(900人分顧客データみたいなもの) から今回対象になる人を範囲でえらび(100番目から200番目等) さらにその中から対象から外したい人を最左列に配置したチェックボックス で選択して残った対象者だけで別の表を作成するというようなプログラムを組みたかった のですが、リストボックスの方法だとちと選びづらいです >>つーか、何百個ものチェックボックスを配置するインターフェイスを見直した方がいいと思うけどね おっしゃる通りですね(´・ω・`) 素直に左端に1か0を入力することで判別する方がいいかもです チェックボックス900個も置いたらめちゃくちゃ重くなったし 85:デフォルトの名無しさん 07/01/27 11:50:41 >>84 シート上ならOLEObjectsコレクションだ objSheet.OLEObjects("CheckBox" & i).Object.Value Shapesコレクションからも辿れるけどね objSheet.Shapes("CheckBox" & i).OLEFormat.Object.Object.Value > 素直に左端に1か0を入力することで判別する方がいいかもです の方法でも、表示形式を [=0]"";[=1]"●" とかにすれば解りやすいし ' A列をダブルクリックしたらチェック反転 Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) If Target.Column <> 1 Then Exit Sub Target.Value = 1 - Target.Value Cancel = True End Sub ' A列を含む範囲を右クリックしたら、その範囲全てのチェック状態を、選択範囲の一番上を基準に反転 Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean) If Target.Column <> 1 Then Exit Sub Target.Resize(, 1).Value = 1 - Target.Cells(1).Value Cancel = True End Sub などを使えば、マウスでチェック状態の切替が出来る ●の変わりに☐☑を使うことも可能 Range("A:A").NumberFormat = "[=0]""" & ChrW(9744) & """;[=1]""" & ChrW(9745) & """"
次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
レスジャンプ
mixiチェック!
Twitterに投稿
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch
5388日前に更新/123 KB
担当:undef