- 締切済み
VBAでカウンタを作るマクロを教えてください
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- neKo_quatre
- ベストアンサー率45% (717/1576)
> 2000までのカウントをおこない > 2000を超えないで1000に戻る。 結局、2000は表示されるんでしょうか?されないんでしょうか? 1999の次が1000になるんなら、 Sub ボタン1_Click() If 1000 <= Range("A1") And Range("A1") < 1999 Then Range("A1") = Range("A1") + 1 Else Range("A1") = 1000 End If End Sub とか。
関連するQ&A
- VBAでカウンターを設定しています
Range("A1") = (Range("A1") + 1) を作成しましたが初期値と最終値を設定するには どのようなマクロを追加すればよいのでしょうか
- 締切済み
- 経営情報システム
- VBAマクロ
マクロボタンをクリックしてマクロを実行する事において、 マクロの実行が1年に1回だけしか有効に実行されないようにする為には どのような記述をすれば良いでしようか。 2回目以降のクリックにおいては既に実行されている旨の表示が必要です。 宜しくお願いします。
- ベストアンサー
- Visual Basic
- エクセルVBA escキーのマクロ
初心者に毛が生えた状態です。エクセル2000を使っています。 ワークシートをWクリックするとユーザーフォームを表示するようにマクロの記述をしています。 ユーザーフォームをキャンセルボタン(×)で閉じるとシートのセルの中にカーソルが入った状態になります。 それをescキーを押した時のように、カーソルがセルの中に無い状態にしたいのです。 マクロの記録でescキーを押しても記録されないので、コードが分かりません。 ユーザーフォームの×ボタンを押したら、Wクリックする前の状態に戻すコードを教えてください。 よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- マクロについて
たとえば、事前にAボタンを設定してあると仮定します。 A1セルを指定してAボタンを押すとそのセルに入力した文字を消します。といったのはマクロで作成したことがあるのですが、これをどのセルを選択してボタンを押すと文字が消せるといったようにしたいのですがどうすればいいですか? マクロだとそのセル単体か、若しくは一定の範囲内を指定したセルといったようにしか設定したことがなく、なんやかんやで構ってみても分かりませんでした。 そのボタンにVBを組まないといけないのでしょうか? それか他の方法があれば教えてください。よろしく御願いします。
- 締切済み
- その他(インターネット・Webサービス)
- VBAでマクロを消すコマンドがありますか
Sheet1に「コピー」ボタンを置き、クリックすると"Sheet1"のコピー"Sheet1 (2)"を作成するマクロを作成しました。 このあと、"Sheet1 (2)"にコピーされた全てのボタンとマクロを削除したいのですが、 ボタンの削除はうまくできましたがマクロが残ってしまいます。 これをやる目的は、Sheet1でいろいろ編集した帳票をReadOnlyの保存版を作って残したいということです。 ボタンが無くなるので"Sheet1 (2)"のマクロは使えなくなり、目的は達成しているのですが、できればごみとなった"Sheet1 (2)"のマクロを消したいのです。 VBAの記述内でマクロを消去することはできるのでしょうか。
- ベストアンサー
- オフィス系ソフト
- エクセル マクロ コンボボックスリスト
sheet1の場所でボタンクリックでフォーム表示。その中でコンボボックスリストを作成。 sheet3にデーターをA列に作りました。 1)フォームの中のコンボボックスをクリックしてリスト表示させた い。マクロの記述を教えてください。 2)コンボボックスリストに表示した文字をsheet2に記録するボタンを作ったがマクロの記述を教えてください。
- ベストアンサー
- オフィス系ソフト
- VBAマクロに詳しい方助けてください!
Excel2007で乱数を使ったマクロを組んだのですが、同じ数字が繰り返し出力されて困っています。詳しい方、どうか解明をお願いします。 やりたいこと: 100分の1の確率で抽選を繰り返し、当たり(乱数で1が発生したら当たりとする)がでたら「何回目の抽選で当選したか」をセルA1に記入し、セルA2に移行して同じ抽選をやり直す。その作業をA10000まで続ける。 作成したマクロ: Sub 百分の一抽選() Dim r, cou, ransuu As Integer For r = 1 To 10000 'A1 からA10000まで繰り返す For cou = 1 To 10000 '↑100分の1の確率で当たり(1を当たりとする)が出るまで繰り返す Randomize '乱数初期化 ransuu = Int(Rnd() * 100) + 1 '1から100までの乱数を作成 If ransuu = 1 Then '乱数で1が発生したら当たりとしてセルに記入 Cells(r, 1) = cou Exit For '当たりが出たのでひとつ下のセルでの抽選に移行 End If Next Next End Sub マクロを走らせた結果: 62,43,110,103,43,110,103,43,110,8,94,47,115・・・ 上記のように同じ数字のカタマリができてしまいます。 もちろん乱数ですので連続したり重複したりするでしょうが、 あまりに同じパターンが繰り返されるのでどこかおかしいのだと思います。 マクロを実行するたびに数字はかわるのですが、やはりカタマリになります。 作成・動作環境はWinXP,Excel2007(ファイル自体は.xlsで作成),Core2Duo2.20GHz,メモリ2GBです。 ほかのExcelのバージョンでも試してみましたが同じような結果です。 当方VBA歴3年ほどですが、わけがわからずに不思議でなりません。 詳しい方、ぜひ解明をお願いします。同じマクロ使っても現象が起きないようでしたら こちらの環境のせいだと思われるので、そういったご指摘でもかまいません。 よろしくお願いいたします。
- ベストアンサー
- オフィス系ソフト
- マクロについて教えて下さい。
マクロについて教えて下さい。 タイムカードを作成するマクロを作成したのですが 時間を修正できないようにシートの保護をパスワードを 設定して作成しました。 ユーザーフォームのボタンを押すと時刻が入るようになっているのですが 当然時刻を入れる時は保護を解除しなければならないので 全シートの保護の解除のマクロも作成しました。 マクロにはパスワードが記述してあります。 このマクロを見られないようにする方法はありますでしょうか。 宜しくお願いします。
- ベストアンサー
- オフィス系ソフト
- フォーム マクロ
フォームをつくり、そのデータを1枚の表に入れていきます 4月1日からはじまり、1年分です フォームで数字を入力し、データ移行のボタンを押すたびにマクロが動き処理します その時 4/1 ? 4/2?.....っと聞いてくれます 始めは良いですが、5月には30回聞かれます・・ 省力するに、記述マクロありますか
- ベストアンサー
- その他MS Office製品
お礼
nako_quatreさん、ありがとうございました。完璧に動作しました。心より御礼申し上げます。感謝!