No.5ベストアンサー
- 回答日時:
私は解答後の質問の中にあるOKWEBの中のコードをコピーアンドペーストだけでやったら、動きました。
再解説しますのでやって見てください。(1)Dim i As Integer
Private Sub test01()
i = 1
End Subを貼りつけます。
注意事項は、VBEの画面上で
Private Sub CommandButton1_Click()とEnd及びその下の
Private Sub CommandButton2_Click()とEndの塊の外
すなわちPrivate Sub CommandButton1_Click()より上の部分
に貼りつけること。(Private Sub CommandButton1_Click()
とEndの間に貼りつけてはいけない。)
(2)Private Sub CommandButton1_Click()とEndのあいだにIf Worksheets("sheet1").Cells(i, 3) <> Minute(Time()) Then
i = i + 1
End If
Worksheets("sheet1").Cells(i, 2) = Hour(Time())
Worksheets("sheet1").Cells(i, 3) = Minute(Time())
Worksheets("sheet1").Cells(i, 4) = Cells(i, 4) + 1
を貼りつけること。
(3)Private Sub CommandButton2_Click()とEndのあいだ
にIf Worksheets("sheet1").Cells(i, 3) <> Minute(Time()) Then
i = i + 1
End If
Worksheets("sheet1").Cells(i, 2) = Hour(Time())
Worksheets("sheet1").Cells(i, 3) = Minute(Time())
Worksheets("sheet1").Cells(i, 5) = Cells(i, 5) + 1
を貼りつけること。
(4)(1)のi=1の行にカーソルを置いて(ここを間違わないこと)VBEの画面の実行/Subフォームの実行をクリックする。これでiに1がセットされる。初期値の設定。これが
上手くいかないと、+1の演算(i=i+1)上手くいかない。
(5)あとはエクセルのシートの男女ボタンをクリックすると
+1されました。
No.4
- 回答日時:
VBAというものが、初めての方には無理があるかと思いますが,一応易しそうに仕様・要求を簡略化して載せます。
(1)Sheet1の画面で表示-ツールバー-VisualBasicをクリック。
(2)VisualBasicのツールバーの中の四角い「コマンドボタン」をクリック。
(3)Sheet1上にカーソルを持ってくると+字状になるから右下方向に左マウスを押し下げつつ擦ると、小□が四隅と辺中間に8つ現われる。
(4)四角の中で右クリックする。プロパティをクリック。Captionの行の右列に「男」と打ちこむ。プロパティウインドウの右上の×をクリック。
(5)(2)-(4)をもう一度繰り返す。コマンドボタンをもう1つ作る。Captionの男としたところを「女」といれる。配置はA列辺りで、男と女が適当に離れて、上下に揃うようにする。
(6)「男」の方で、小□が四隅と辺中間に8つ現われた状態で、その中でダブルクリックする。
Private Sub CommandButton1_Click()
End Subとなる。
元のSheet1に戻りる。
(7)「女」の方でも、小□が四隅と辺中間に8つ現われた状態で、その中でダブルクリックする。
Private Sub CommandButton2_Click()
End Subが(6)の下に追加される。
(8)(6)の方のSub End間に下記コードをコピーして貼りつける
If Worksheets("sheet1").Cells(i, 3) <> Minute(Time()) Then
i = i + 1
End If
Worksheets("sheet1").Cells(i, 2) = Hour(Time())
Worksheets("sheet1").Cells(i, 3) = Minute(Time())
Worksheets("sheet1").Cells(i, 4) = Cells(i, 4) + 1
(9)(7)の方のSub End間に下記コードをコピーして貼りつける
If Worksheets("sheet1").Cells(i, 3) <> Minute(Time()) Then
i = i + 1
End If
Worksheets("sheet1").Cells(i, 2) = Hour(Time())
Worksheets("sheet1").Cells(i, 3) = Minute(Time())
Worksheets("sheet1").Cells(i, 5) = Cells(i, 5) + 1
(10)Private Sub CommandButton1_Click()の上に
Dim i As Integer
Private Sub test01()
i = 1
End Sub
を貼りつける。
(11)Private Sub test01()
i = 1
End Subの行にカーソルを置いて、メニューの「実行」-Sub/ユーザーフォームの実行をクリック。
(12)Sheet1に戻り、三角定規と鉛筆のアイコンをクリック。
(13)「男」ボタンをクリックするとD列の数字が1カウントアップ。「女」ボタンをクリックするとE列の数字が1カウントアップ。時刻はB列=時、C列=分が表示されます。
パソコンの時計を使っていますので正確に合わせておいてください。
時間ごとなどの合計は、エクセルの表への操作で出したり、印刷したりしてください。
(14)表をリセットする時は、Sheet1をSheet2なりにコピーしてしまってから
)Private Sub test01()
i = 1
End Subの行にカーソルを置いて、メニューの「実行」-「Sub/ユーザーフォームの実行」をクリック。
ありがとうございます。早速実行してみたのですが・・・エラーがでてしまいました。このような感じにプログラムを組んだのですが。なにが間違っているのでしょうか?(13)でエラーが出ます。
Dim i As Integer
Private Sub test01()
i = 1
End Sub
Private Sub CommandButton1_Click()
If Worksheets("sheet1").Cells(i, 3) <> Minute(Time()) Then
i = i + 1
End If
Worksheets("sheet1").Cells(i, 2) = Hour(Time())
Worksheets("sheet1").Cells(i, 3) = Minute(Time())
Worksheets("sheet1").Cells(i, 4) = Cells(i, 4) + 1
End Sub
Private Sub CommandButton2_Click()
If Worksheets("sheet1").Cells(i, 3) <> Minute(Time()) Then
i = i + 1
End If
Worksheets("sheet1").Cells(i, 2) = Hour(Time())
Worksheets("sheet1").Cells(i, 3) = Minute(Time())
Worksheets("sheet1").Cells(i, 5) = Cells(i, 5) + 1
End Sub
宜しくお願い致します。
No.3
- 回答日時:
(1)来館者の数を、ドアーの光線さえぎりや重量がかかった
事やドアーの開閉÷2で読み取る装置とパソコンのエクセルを連動させるのは、素人では無理でしょう。
(2)貸出表とかの枚数を別途に人が数えていて、表になっている(または作る)ならエクセルの表に入力すれば、グラフ等に直ぐなるし,時刻別、日別、月別に表せる事は簡単にできます。
(3)ノートパソコンを持ったアルバイトの人が、来館客を
数えて入力する、カウンタの代わりにエクセルを使うなら
VBAというプログラムになりますが、10行程度のものを
組めば出来ます。
Private Sub test01()
i = 1
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Cells(i, 3) <> Minute(Time()) Then
i = i + 1
End If
Cells(i, 2) = Hour(Time())
Cells(i, 3) = Minute(Time())
Cells(i, 4) = Cells(i, 4) + 1
End Sub
来館者を見るごとに、エンタキーを押すと分刻みで1だけ
カウントアップします。分が進むと下行にカウント1アップ
して表上に出して行きます。
(4)最近は各図書館とも、バーコードシステムの貸出し・
返却システムが導入済みのように思います。回りの詳しい方に聞けば、来館者数をはじめ、詳しい統計データが既に出るようになっているはずと思いますが。
(3)のようなかたちでカウントを取っていきたいのですが・・・ちょっと私には難しいのですが。どのように作成すれば良いのでしょうか??男女別に1時間ごとにカウントしていき男女の合計も一時間ごとにだします。最後に一日の男女別の合計と全体の合計をだす表を作りたいのです。今までは紙で正の字でチェックしていました。それをノートパソコンでおこないたいのです。アドバイスお願い致します。
No.1
- 回答日時:
初めまして。
おっしゃってる意味が良く解らないのですが?
エクセルは集計は得意ですが入力は自動では出来ません。
時間ごとの入場者数を数えるのは何処で誰が如何して・・
もう少し具体的にご質問いただけると回答も増えると思います。
人感センサー等で読み取る装置が有ってその装置から何らかのデジタルデータが受け取れるのでしたら話は別ですが?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excel(エクセル)でフィルター抽出後、非表示の行を計算しないで、合計を算出する方法 【内容】 添 4 2023/01/30 17:17
- Excel(エクセル) エクセルの条件付き書式 4 2023/04/17 11:05
- Excel(エクセル) IF 関数で「〇〇 という文字を含む場合」の分岐処理で表示された数字はSUMで数字集計できますか? 3 2022/08/02 16:29
- 教えて!goo 教えて!goo のログインについて教えてください。 おはようございます。教えて!goo 初心者です。 2 2023/07/22 11:22
- Excel(エクセル) Excelでの複数条件のカウントについて 1 2022/09/25 07:40
- Excel(エクセル) 【エクセル関数】アルファベットで以上だったらカウントする 4 2022/07/09 14:07
- SQL Server 2つのSQL(Access)の結果[時刻,カウント数]を結合して集計する方法 1 2022/04/06 22:57
- Excel(エクセル) countif関数について質問 4 2022/06/14 12:11
- 事務・総務 Excelの表計算についてお聞きしたいことがあります。 7 2022/04/30 16:32
- Excel(エクセル) エクセルのCOUNTIF関数の使い方 1 2022/04/25 15:50
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルの表示形式を保ったま...
-
EXCELで2つの数値のうち大きい...
-
Excelの表示についての質問
-
Excel関数で、範囲内の最後のセ...
-
Excelで隣のセルと同じ内容に列...
-
エクセルで二つの数字の小さい...
-
エクセル(勝手に太字になる)
-
PowerPointで表の1つの列だけ...
-
VBA 連続行データを5行ずつ隣の...
-
エクセル 文字数 多い順 並...
-
「B列が日曜の場合」C列に/...
-
VBAで文字列を数値に変換したい
-
お店に入るために行列に並んで...
-
えエクセルで○は1とし△は0.5で...
-
エクセルの表から正の数、負の...
-
2つのエクセルのデータを同じよ...
-
エクセルでの複数条件下での標...
-
エクセルで時刻(8:00~20:00)...
-
エクセル 同じ値を探して隣の...
-
Excelで中央揃えが出来ない?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルの表示形式を保ったま...
-
excelのマクロでrangeの選択が...
-
エクセル 1つのセル毎に入力...
-
Excel VBA For Each Next構文...
-
Excel2000 VBA ダブルクリック...
-
エクセルで赤い字のセルを抽出
-
エクセルの関数を連続コピー
-
Gメールの内容をスプレッドシ...
-
この関数文の意味を教えてもら...
-
エクセルのセル内にかいた関数...
-
VBA重複チェック
-
EXCEL(エクセル)で0.001以下...
-
ISERROR関数
-
VBAについて教えてくださいshee...
-
他のブックでマクロを実行する...
-
エクセルで別シートにある各々...
-
【Excel関数】商品コードと商品...
-
vbaにて並べ替えしたい。
-
#N/A表示を空白にしたいのです...
-
エクセルでこのような事できま...
おすすめ情報