エクセル(Excel)&ワード(Word)質問掲示板

より見やすく使いやすいエクセル掲示板を目指し、新たにエクセルの質問掲示板を開設いたしました。 これに伴い、当サイトでは今後、新規投稿はできなくなります。(閲覧は当面可能です。)
今後は新掲示板をご利用いただきますよう宜しくお願い致します。今後ともよろしくお願い致します。
○新掲示板
エクセル(Excel)解決掲示板

エクセル・ワードの基本操作に関する質問や関数やマクロの使い方などエクセルとワードに関する質問掲示板。
Welcome Guest 
メインメニュー
ログイン
ユーザー名:

パスワード:


パスワード紛失

LCのマクロ化

前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2010-2-14 17:52
ゲスト    投稿数: 0
rem === 変数設定 ===============================================================

rem --- フラグ変数 ---
set OK=0

rem --- 時間変数 ---
set yyyy=%date:~-10,2%
set yy=%date:~-8,2%
set mm=%date:~-5,2%
set dd=%date:~-2,2%
set YMD=%date:~-8,10%
set HHMMSS=%time:~0,8%

rem --- フォルダ変数 ---
set LOG_DIR="D:\LOG"
set INP_DIR=D:\L\INPUT
set OUT_DIR1=D:\L\OUTPUT\P
set OUT_DIR2=D:\L\OUTPUT\L1
set OUT_DIR3=D:\L\OUTPUT\L2
set OUT_DIR4=D:\L\tougo
set VBS_DIR=D:\VBS

rem --- ファイル変数 ---
set LOG_FILE=L_LOG_%yyyy%%yy%%mm%%dd%.txt
set LOG_FILENAME=%LOG_DIR%\%LOG_FILE%
set OUT_FILE1=P1
set OUT_FILE2=P2
set OUT_FILE3=N1
set OUT_FILE4=N2
set OUT_FILE5=J1
set OUT_FILE6=J2
set OUT_FILE7=F
set OUT_FILE8=P4
set OUT_FILE9=MERGE_OK.TXT
set SYSTEM_FILE1=P
set SYSTEM_FILE2=U
set SYSTEM_FILE3=L
set BAT_FILE=L.bat
set VBS_FILE=L_NG.vbs
set VBS_FILENAME=%VBS_DIR%\%VBS_FILE%

rem --- メッセージ変数 ---
set OK_MSG=正常終了
set NG_MSG=異常終了
set START_MSG=開始
set END_MSG=終了

rem === 変数設定 ===============================================================

REM <STEP0>
REM <初期化処理>===============

DEL %LOG_FILENAME%
DEL %OUT_DIR1%\*.* /Q
DEL %OUT_DIR2%\*.* /Q
DEL %OUT_DIR3%\%OUT_FILE8%.txt
DEL %OUT_DIR4%\%OUT_FILE9%

REM <STEP1>
REM <開始処理>===============
CALL :LINE
ECHO.>> %LOG_FILENAME%
CALL :TIME %BAT_FILE% %START_MSG%
ECHO.>> %LOG_FILENAME%

REM <STEP2>
set SYSTEM_FILENAME=%SYSTEM_FILE1%

ECHO ===============%SYSTEM_FILENAME%ファイルバックアップ処理%START_MSG%===============>> %LOG_FILENAME%
CALL :COPY_FC %INP_DIR% P* %INP_DIR%\bkp

IF "%OK%"=="0" (
ECHO.>> %LOG_FILENAME%
ECHO %SYSTEM_FILENAME%ファイルバックアップ処理%OK_MSG%>> %LOG_FILENAME%
ECHO.>> %LOG_FILENAME%
ECHO ===============%SYSTEM_FILENAME%ファイルバックアップ処理%END_MSG%===============>> %LOG_FILENAME%
ECHO.>> %LOG_FILENAME%
) else (
GOTO BKUP_NG
)

REM <STEP3>
set SYSTEM_FILENAME=%SYSTEM_FILE2%

ECHO ===============%SYSTEM_FILENAME%ファイルバックアップ処理%START_MSG%===============>> %LOG_FILENAME%
CALL :COPY_FC %INP_DIR% C* %INP_DIR%\CN_BKP

IF "%OK%"=="0" (
GOTO NS
) else (
GOTO BKUP_NG
)

:NS
CALL :COPY_FC %INP_DIR% N* %INP_DIR%\CN_BKP

IF "%OK%"=="0" (
ECHO.>> %LOG_FILENAME%
ECHO %SYSTEM_FILENAME%ファイルバックアップ処理%OK_MSG%>> %LOG_FILENAME%
ECHO.>> %LOG_FILENAME%
ECHO ===============%SYSTEM_FILENAME%ファイルバックアップ処理%END_MSG%===============>> %LOG_FILENAME%
ECHO.>> %LOG_FILENAME%
) else (
GOTO BKUP_NG
)

REM <STEP4>
set SYSTEM_FILENAME=%SYSTEM_FILE3%

ECHO ===============%SYSTEM_FILENAME%ファイルバックアップ処理%START_MSG%===============>> %LOG_FILENAME%
CALL :COPY_FC %INP_DIR% J* %INP_DIR%\bkp

IF "%OK%"=="0" (
GOTO FW
) else (
GOTO BKUP_NG
)

:FW
CALL :COPY_FC %INP_DIR% F* %INP_DIR%\bkp

IF "%OK%"=="0" (
ECHO.>> %LOG_FILENAME%
ECHO %SYSTEM_FILENAME%ファイルバックアップ処理%OK_MSG%>> %LOG_FILENAME%
ECHO.>> %LOG_FILENAME%
ECHO ===============%SYSTEM_FILENAME%ファイルバックアップ処理%END_MSG%===============>> %LOG_FILENAME%
ECHO.>> %LOG_FILENAME%
) else (
GOTO BKUP_NG
)

REM <STEP5>
ECHO ===============エクスポートファイル(暗号化解除後)名前変更処理%START_MSG%===============>> %LOG_FILENAME%

CALL :RENAME %INP_DIR%\TO_NRI %OUT_FILE1%* exp %OUT_FILE3% exp
IF NOT "%ERRORLEVEL%"=="0" GOTO RENAME_NG1

CALL :RENAME %INP_DIR%\TO_NRI %OUT_FILE2%* exp %OUT_FILE4% exp
IF NOT "%ERRORLEVEL%"=="0" GOTO RENAME_NG1

CALL :RENAME %INP_DIR%\TO_NRI %OUT_FILE5%* exp %OUT_FILE5% exp
IF NOT "%ERRORLEVEL%"=="0" GOTO RENAME_NG1

CALL :RENAME %INP_DIR%\TO_NRI %OUT_FILE6%* exp %OUT_FILE6% exp
IF NOT "%ERRORLEVEL%"=="0" GOTO RENAME_NG1

CALL :RENAME %INP_DIR%\TO_NRI %OUT_FILE7%* exp %OUT_FILE7% exp
IF NOT "%ERRORLEVEL%"=="0" GOTO RENAME_NG1

ECHO.>> %LOG_FILENAME%
ECHO エクスポートファイル名前変更処理%OK_MSG%>> %LOG_FILENAME%
ECHO.>> %LOG_FILENAME%
ECHO ===============エクスポートファイル(暗号化解除後)名前変更処理%END_MSG%===============>> %LOG_FILENAME%
ECHO.>> %LOG_FILENAME%

REM <STEP6>
set SYSTEM_FILENAME=%SYSTEM_FILE1%

ECHO ===============%SYSTEM_FILENAME%ファイル転送処理%START_MSG%===============>> %LOG_FILENAME%
CALL :COPY_FC %INP_DIR%\TO_NRI N* %OUT_DIR1%

IF "%OK%"=="0" (
ECHO.>> %LOG_FILENAME%
ECHO %SYSTEM_FILENAME%ファイル転送処理%OK_MSG%>> %LOG_FILENAME%
ECHO.>> %LOG_FILENAME%
ECHO ===============%SYSTEM_FILENAME%ファイル転送処理%END_MSG%===============>> %LOG_FILENAME%
ECHO.>> %LOG_FILENAME%
) else (
GOTO FTP_NG
)

CALL :RENAME %OUT_DIR1% %OUT_FILE3% exp %OUT_FILE3% rcv
IF NOT "%ERRORLEVEL%"=="0" GOTO RENAME_NG2

CALL :RENAME %OUT_DIR1% %OUT_FILE4% exp %OUT_FILE4% rcv
IF NOT "%ERRORLEVEL%"=="0" GOTO RENAME_NG2

REM <STEP7>
set SYSTEM_FILENAME=%SYSTEM_FILE3%

ECHO ===============%SYSTEM_FILENAME%ファイル転送処理%START_MSG%===============>> %LOG_FILENAME%
ECHO.>> %LOG_FILENAME%

CALL :COPY_FC %INP_DIR%\TO_NRI J* %OUT_DIR2%
IF NOT "%ERRORLEVEL%"=="0" GOTO FTP_NG

CALL :COPY_FC %INP_DIR%\TO_NRI F* %OUT_DIR3%
IF NOT "%ERRORLEVEL%"=="0" GOTO FTP_NG

CALL :RENAME %OUT_DIR2% %OUT_FILE5% exp %OUT_FILE5% rcv
IF NOT "%ERRORLEVEL%"=="0" GOTO RENAME_NG2

CALL :RENAME %OUT_DIR2% %OUT_FILE6% exp %OUT_FILE6% rcv
IF NOT "%ERRORLEVEL%"=="0" GOTO RENAME_NG2

CALL :RENAME %OUT_DIR3% %OUT_FILE7% exp %OUT_FILE8% txt
IF NOT "%ERRORLEVEL%"=="0" GOTO RENAME_NG2

ECHO %SYSTEM_FILENAME%ファイル転送処理%OK_MSG%>> %LOG_FILENAME%
ECHO.>> %LOG_FILENAME%
ECHO ===============%SYSTEM_FILENAME%ファイル転送処理%END_MSG%===============>> %LOG_FILENAME%
ECHO.>> %LOG_FILENAME%

REM <STEP8>
ECHO ===============本日分受信ファイル全削除処理%START_MSG%===============>> %LOG_FILENAME%
ECHO.>> %LOG_FILENAME%
DEL %INP_DIR%\*.* /Q
DEL %INP_DIR%\TO_NRI\*.* /Q
ECHO 本日分受信ファイル全削除処理%OK_MSG%>> %LOG_FILENAME%
ECHO.>> %LOG_FILENAME%
ECHO ===============本日分受信ファイル全削除処理%END_MSG%===============>> %LOG_FILENAME%
ECHO.>> %LOG_FILENAME%

REM <STEP9>
ECHO ===============自動統合トリガーファイル作成処理%START_MSG%===============>> %LOG_FILENAME%
ECHO.>> %LOG_FILENAME%
TYPE NUL> %OUT_DIR4%\%OUT_FILE9%
ECHO 自動統合トリガーファイル作成処理%OK_MSG%>> %LOG_FILENAME%
ECHO.>> %LOG_FILENAME%
ECHO ===============自動統合トリガーファイル作成処理%END_MSG%===============>> %LOG_FILENAME%
ECHO.>> %LOG_FILENAME%

REM <STEP10>
ECHO ===============判定結果出力処理%START_MSG%===============>> %LOG_FILENAME%
ECHO.>> %LOG_FILENAME%
ECHO %OK_MSG%>> %LOG_FILENAME%
ECHO.>> %LOG_FILENAME%
ECHO ===============判定結果出力処理%START_MSG%===============>> %LOG_FILENAME%
ECHO.>> %LOG_FILENAME%
CALL :TIME %BAT_FILE% %END_MSG%
ECHO.>> %LOG_FILENAME%
CALL :LINE
GOTO END

★★★サブルーチン★★★

REM <ライン出力処理>===============
:LINE
ECHO ------------------------------------------------------------------------------------------------->> %LOG_FILENAME%
EXIT /B

REM <日付/時間取得処理>===============
:TIME
setlocal
set yyyy=%date:~-10,2%
set yy=%date:~-8,2%
set mm=%date:~-5,2%
set dd=%date:~-2,2%
set HH=%TIME:~0,2%
set MM2=%TIME:~3,2%
set SS=%TIME:~6,2%
ECHO %~1 処理日 = %yyyy%%yy%/%mm%/%dd% 処理%~2時間= %HH%:%MM2%:%SS%>> %LOG_FILENAME%

EXIT /B

REM 複写&比較結果判定処理
:COPY_FC
setlocal
FOR %%F in (%~1\%~2.*) do (
COPY %~1\\%%~nxF %~3\\%%~nxF >NUL
FC %~1\\%%~nxF %~3\\%%~nxF >NUL
IF ERRORLEVEL 0 set OK=1
)

EXIT /B

REM 名前変更処理
:RENAME
setlocal
RENAME %~1\%~2.%~3 %~4.%~5

EXIT /B

REM ファイルバックアップ処理 NG
:BKUP_NG
wscript.exe %VBS_FILENAME% %SYSTEM_FILENAME%ファイルバックアップ処理
ECHO %SYSTEM_FILENAME%ファイルバックアップ処理%NG_MSG%>> %LOG_FILENAME%
ECHO.>> %LOG_FILENAME%
ECHO ===============%SYSTEM_FILENAME%ファイルバックアップ処理%END_MSG%===============>> %LOG_FILENAME%
ECHO.>> %LOG_FILENAME%
GOTO NG_HANTEI

REM エクスポートファイル名前変更処理 NG
:RENAME_NG1
wscript.exe %VBS_FILENAME% エクスポートファイル名前変更処理
ECHO.>> %LOG_FILENAME%
ECHO エクスポートファイル名前変更処理%NG_MSG%>> %LOG_FILENAME%
ECHO.>> %LOG_FILENAME%
ECHO ===============エクスポートファイル(暗号化解除後)名前変更処理%END_MSG%===============>> %LOG_FILENAME%
ECHO.>> %LOG_FILENAME%
GOTO NG_HANTEI

REM %SYSTEM_FILENAME%名前変更処理 NG
:RENAME_NG2
wscript.exe %VBS_FILENAME% %SYSTEM_FILENAME%名前変更処理
ECHO.>> %LOG_FILENAME%
ECHO %SYSTEM_FILENAME%名前変更処理%NG_MSG%>> %LOG_FILENAME%
ECHO.>> %LOG_FILENAME%
ECHO ===============%SYSTEM_FILENAME%名前変更処理処理%END_MSG%===============>> %LOG_FILENAME%
ECHO.>> %LOG_FILENAME%
GOTO NG_HANTEI

REM %SYSTEM_FILENAME%ファイル転送処理 NG
:FTP_NG
wscript.exe %VBS_FILENAME% %SYSTEM_FILENAME%ファイル転送処理
ECHO %SYSTEM_FILENAME%ファイル転送処理%NG_MSG%>> %LOG_FILENAME%
ECHO.>> %LOG_FILENAME%
ECHO ===============%SYSTEM_FILENAME%ファイル転送処理%END_MSG%===============>> %LOG_FILENAME%
ECHO.>> %LOG_FILENAME%
GOTO NG_HANTEI

REM 判定結果出力処理 NG
:NG_HANTEI
ECHO ===============判定結果出力処理%START_MSG%===============>> %LOG_FILENAME%
ECHO.>> %LOG_FILENAME%
ECHO %NG_MSG%>> %LOG_FILENAME%
ECHO.>> %LOG_FILENAME%
ECHO ===============判定結果出力処理%START_MSG%===============>> %LOG_FILENAME%
ECHO.>> %LOG_FILENAME%
CALL :TIME %BAT_FILE% %END_MSG%
ECHO.>> %LOG_FILENAME%
CALL :LINE
GOTO END

:END
cscript NWDRIVE.WSF //job:FREE
endlocal
投票数:70 平均点:5.86
返信する

このトピックに投稿する

題名
ゲスト名   :
投稿本文

  条件検索へ


スポンサーリンク
スポンサーリンク
エクセル・ワード質問/回答集 - クイズ・問題QUUS! - 無料英語学習 - 投資家・トレーダー掲示版
為替(FX)テクニカル分析入門 - エクセル(EXCEL)学習・入門 - Word(ワード)の使い方/活用・入門
Copy right(c) 2006-2010 エクセル&ワード質問掲示板 all right reserved