Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


30699 / 76738 ←次へ | 前へ→

【51303】Re:VBA デジタル時計の作成
発言  ichinose  - 07/9/11(火) 8:20 -

引用なし
パスワード
   ▼さつき さん:
おはようございます。

>エクセルのVBAを使用して一分間に140の値が加算される世界人口時計を作成したいのですが、そういったものはVBAで作成可能でしょうか。

ぱっせんじゃーさんの投稿のように数字の見栄えのことを言っておられるなら、
この投稿は的外れですが・・・。

>VBAでアナログ時計は作成したことがあるのですが、デジタルのものを作成したことはありません。

私もアナログ時計はお遊びで作ったことがありますが、
基本的には、デジタルの方が簡単だと思いますよ


新規ブックにユーザーフォームを一つ作成して置いてください。
(Userform1)
コントロールは、コードで作成しますから、一切要りません。

上記のUserform1のモジュールに
'==================================================================
Option Explicit
Public cls As Long
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
  If CloseMode = 0 Then
    Cancel = True
    cls = 1
    Me.Hide
    End If
End Sub


標準モジュールに
'========================================================================
Option Explicit
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
'========================================================================
Sub main()
  Dim ie As Object
  Dim idoc As Object
  Set ie = CreateObject("InternetExplorer.Application")
  With ie
    .Visible = False
    .navigate "http://www.census.gov/ipc/www/popclockworld.html"
'         ↑httpは半角に訂正してください
    Call set_userform
    UserForm1.Show vbModeless
    DoEvents
    Do
     DoEvents
     Do While .Busy = True Or .readyState <> 4
       Loop
     Set idoc = ie.document
     UserForm1.Controls("label1").Caption = idoc.getElementById("worldnumber").innerText
     DoEvents
     Sleep 5000
     .Refresh
     Loop Until UserForm1.cls = 1
    .Quit
    End With
  
  Set ie = Nothing
  Set idoc = Nothing
  Unload UserForm1
End Sub
'========================================================================
Sub set_userform()
  Load UserForm1
  With UserForm1
    .Caption = "世界人口時計"
    .Height = 100
    .Width = 250
    With .Controls.add("Forms.Label.1", "label1", True)
     .Left = 36
     .Top = 24
     .Width = 180
     .Height = 26
     .Font.Size = 26
     .BackColor = &H80000009
     .textAlign = 3
     End With
    End With
End Sub


として、mainを実行してみてください。
どこから、人口情報を取得するかですが・・・。


尚、Doeventsのタイミングでしかユーザーフォームを閉じることが出来ませんから、
連続で閉じるボタンをカチカチしてください。
処理が終了します。
0 hits

【51299】VBA デジタル時計の作成 さつき 07/9/11(火) 6:21 質問
【51300】Re:VBA デジタル時計の作成 ぱっせんじゃー 07/9/11(火) 7:38 発言
【51301】Re:VBA デジタル時計の作成 ぱっせんじゃー 07/9/11(火) 7:41 発言
【51306】Re:VBA デジタル時計の作成 ぱっせんじゃー 07/9/11(火) 11:01 発言
【51324】Re:VBA デジタル時計の作成 さつき 07/9/12(水) 5:32 お礼
【51303】Re:VBA デジタル時計の作成 ichinose 07/9/11(火) 8:20 発言
【51323】Re:VBA デジタル時計の作成 さつき 07/9/12(水) 5:26 質問
【51326】Re:VBA デジタル時計の作成 ichinose 07/9/12(水) 7:17 発言

30699 / 76738 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free