重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

現在、エクセルでマクロを記録して、その後VBAを開き自分の都合のいいように
書き換えるぐらいの知識は持っています。
只、先日「UWSC(マウス移動の記録やスクリプト入力が出来る)」
というフリーソフトをDLしました。

職場でエクスプローラーから今日日付のデータをCSV保存する業務があるので
「よ~しマクロを覚えた時の要領でいっちょ自動化してやるぞ」
と意気込んでヘルプやサンプルを見るのですが、
戻値?ID?COMインターフェース?????

単語の意味が解りません。
いやヘルプや検索見れば解説が出るのですが、解説の意味が解らない。w

「これはUWSCのスクリプトを組む前に基本的(プログラム)な知識が多少必要なのかな?」
けれど、どんな知識が必要なのか、なにから調べればいいか皆目検討がつきません。
回答しづらい質問かと思いますが、アドバイスを宜しくお願いします。

*こちらの状況を掴んで頂くため、多少長文になってしまいました。
お許しください。

A 回答 (2件)

とりあえず、指定したディレクトリから今日の日付のファイルを検索し、件数まで報告するマクロを作りました。


参照してください。
コピー部分までは作っていませんので、勉強してください。
現在の設定ではc:\uwsc作業.txtを生成し、そこを参照しますので、ファイル名の取得の為の文字数等はそこを参照してください。
この状態で、最後まで動きますが、バックアップは行いません(そこまで作って無いので)。作業ファイルc:\uwsc作業.txtは作成します。

//***********本日更新データバックアップマクロの作成途中**************
//変数宣言部*****************************************************************
チェックするディレクトリ = "c:\windows"
転送先ディレクトリ = "c:\test_work"
作業ファイル = "c:\UWSC作業.txt"
今日 = gettime()
今日の日付 = g_time_yy4 + "/" + g_time_mm2 + "/" + g_time_dd2
//変数宣言ここまで***********************************************************

//ディレクトリ情報の取得*****************************************************
ifb fopen(チェックするディレクトリ,f_exists) = -1 or fopen(転送先ディレクトリ,f_exists) = -1then
msgbox("登録したディレクトリが不正です。終了~")
endif
//ディレクトリ情報を作業ファイルへ転送***************************************
doscmd( "dir " + チェックするディレクトリ + " > " + 作業ファイル)

//保存した作業ファイルをOPEN
file_id = fopen(作業ファイル,f_read)
作業数 = 0
for i = 1 to 1000 //現在1000行検査する仕様
検査値 = fget(file_id,i)
ifb COPY( 検査値, 1, 10 ) = 今日の日付 THEN

//************************************************************************
// ここに、検査値からcopyコマンドでファイル名を取得し
// DOSコマンドで「転送先ディレクトリ」にファイルをコピーする
// コマンドをコーディングしてください
// ディレクトリの場合は、<DIR>の文字が入りますので、文字数チェックして
// 回避するなりしてください 
//************************************************************************

作業数 = 作業数 + 1
ENDIF

next
msgbox(作業数 + " 件バックアップしました")
    • good
    • 0

VBAが書ければ苦労する事はあまりないと思いますが、


戻り値が解らないというのはちょっとVBAが書けるとは言えないレベルかと?。
うみうみ屋さんのサンプルを見て勉強されては?
私はヘルプファイルを印刷して、やりたい事のコマンドを探してコーディングしました。
PCの各種設定の自動化
各種アプリケーションの自動制御くらいなら普通に書けます
    • good
    • 0
この回答へのお礼

porilin様、回答有難うございます。

空き時間を使ってサンプルを実行させ
ヘルプを参照しながら「多分ここの文がセットで
こういう動きになるのかなぁ」
という具合に繰り返し行っている最中です。

使用目的はおっしゃるとおり
「アプリケーションの自動制御」なので
そんな難しい式や知識はいらないかと思うのですが・・・

自宅のpc(winxp)だと実行するのに、会社(win2000)だと作動しなくなったり・・・
なかなか上手くいきません。ん~

*他の方の意見を聞いてもサンプルを勧められるので
しばらくコピペしながら勉強したいと思います。

回答有難うございました。

お礼日時:2006/04/07 10:16

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!