過去ログ

                                Page     365
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫   
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 ▼チェックボックスで  tou 02/11/15(金) 9:39
   ┗Re:チェックボックスで  Nakamura 02/11/15(金) 11:52
      ┗Re:チェックボックスで  tou 02/11/18(月) 14:49
         ┗Re:チェックボックスで  Nakamura 02/11/18(月) 23:39
            ┗Re:チェックボックスで  tou 02/11/19(火) 19:55
               ┗Re:チェックボックスで  Nakamura 02/11/20(水) 1:05

 ───────────────────────────────────────
 ■題名 : チェックボックスで
 ■名前 : tou
 ■日付 : 02/11/15(金) 9:39
 -------------------------------------------------------------------------
   教えてください

チェックボックスをチェックした場合
Sheet1のcells(n,m)に文字を代入したいのですが
どうすれば良いでしょうか?

また、Excel Objectsには、マクロは作成できないのでしょうか?

ifを使ってチェックしたときに文字を代入しようとしたのですが
ActiveのSheetに代入されてしまいます。

よろしくお願いします。
 ───────────────────────────────────────  ■題名 : Re:チェックボックスで  ■名前 : Nakamura  ■日付 : 02/11/15(金) 11:52  -------------------------------------------------------------------------
   ▼tou さん:
こんにちは

チェックボタンは 表示(V) − ツールバー(T) − コントロールツールボックス
のチェックボックスならこんな感じです。
該当シートモジュールに

Private Sub CheckBox1_Click()

  With Worksheets("Sheet1")
  
    If CheckBox1.Value Then
  
      .Cells(1, 1).Value = "ok"
    
    Else
  
      .Cells(1, 1).Value = ""
  
    End If
    
  End With
  
End Sub

>また、Excel Objectsには、マクロは作成できないのでしょうか?

標準モジュールの事かな?VBEで 

挿入(I)− 標準モジュール(M)

で追加できますが、上記コードは該当シートモジュールに記述して下さい。

>ifを使ってチェックしたときに文字を代入しようとしたのですが
>ActiveのSheetに代入されてしまいます。

については、上記コードでクリアしているので問題ないと思います。

それでは
 ───────────────────────────────────────  ■題名 : Re:チェックボックスで  ■名前 : tou  ■日付 : 02/11/18(月) 14:49  -------------------------------------------------------------------------
   ▼Nakamura さん:
ありがとうございました
しかし上手くいきませんでした。
スイマセンがもう一度教えてください。


sheet1にチェックボックスがAとBの二つあります。

チェックボックスAにチェックした時
チェックボックスBは消えます
またsheet2のcells(n,m)に文字を代入します。

Bをチェックした場合は
Aが消えて
sheet2のcells(n,m)に文字を代入します。

何回もスイマセンがよろしくお願いします。
 ───────────────────────────────────────  ■題名 : Re:チェックボックスで  ■名前 : Nakamura  ■日付 : 02/11/18(月) 23:39  -------------------------------------------------------------------------
   こんばんは

http://www.vbalab.net/vbaqa/c-board.cgi?cmd=one;no=1751;id=excel

に回答が寄せられていますよ!

つんさんのコードの

CheckBox1.Visible = False



CheckBox2.Visible = False

の後に

Worksheets("Sheet2").Cells(1, 1).Value = "文字"
を追加すれば良いと思います。

質問しっぱなしで、別に質問するのは如何な物かと思います。
同H.Nの別人の場合はご容赦下さい。

それでは
 ───────────────────────────────────────  ■題名 : Re:チェックボックスで  ■名前 : tou  ■日付 : 02/11/19(火) 19:55  -------------------------------------------------------------------------
   ▼Nakamura さん:
ありがとうございました
しかし、また駄目でした。
「インデックスが有効範囲にありません。」
となってしまいます。

スイマセンがもう一度教えてください。
よろしくお願いします。
 ───────────────────────────────────────  ■題名 : Re:チェックボックスで  ■名前 : Nakamura  ■日付 : 02/11/20(水) 1:05  -------------------------------------------------------------------------
   ▼tou さん:

先ず

http://www.vbalab.net/vbaqa/c-board.cgi?cmd=one;no=1751;id=excel

のスレッドに非礼をお詫びして、閉じておいて下さい。

>「インデックスが有効範囲にありません。」

で止まって、デバックを選択すると何処で、黄色く反転していますか?
このエラーの場合シート名が違っている可能性が有ります。
確認して見て下さい。

それでは
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━    通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━                                 Page 365