エクセルVBAの質問です。


「For」「Next」で繰り返し作業を行う際、
繰り返した回数を3桁の数字にしてSendKeyで送るというマクロを作る場合、
「SendKeys "★"」の★には何をいれたら良いのでしょうか?

例えば1回目の作業の場合
SendKeys "001"
22回目の作業の場合
SendKeys "022"
としたいです。

具体的なマクロが必要な場合は
下記のページの回答者1の方のマクロを使用してください。
http://q.hatena.ne.jp/1159013585

以上よろしくお願いします。

回答の条件
  • 1人2回まで
  • 登録:2006/09/24 19:09:18
  • 終了:2006/09/24 20:24:37

回答(2件)

id:Mook No.1

Mook回答回数1312ベストアンサー獲得回数3912006/09/24 19:16:17

ポイント35pt

どこに送られるかが不定ですが、必要な処理は前後にあるとすると、

For i=1 To Worksheets.Count

        :

    SendKeys Right( "000" & i, 3 )

        :

Next

といった感じでしょうか。

http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja...

id:taroemon

ご回答ありがとうございます。

完璧です。

2006/09/24 20:12:53
id:llusall No.2

llusall回答回数505ベストアンサー獲得回数612006/09/24 19:20:25

ポイント35pt

こちらでいかがでしょうか?

Format関数で"000"のフォーマットにして送信文字列を作成します。

    Dim i As Integer

    Dim sNo As String

    '1~999回繰り返す

    For i = 1 To 999

        '000 のフォーマット整形

        sNo = Format(i, "000")

        'キーの送信(Wait:True)

        SendKeys sNo, True

    Next i

id:taroemon

いつもご回答ありがとうございます。

参考になりました。

2006/09/24 20:13:20

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません