Skip to content

Instantly share code, notes, and snippets.

@toagit
toagit / PutInClipboard.vbs
Created February 14, 2017 07:04
クリップボードに値を設定する。サンプルはアクティブブックのフルパスを設定
Public Sub CopyActiveBookPath()
Dim path As String
path = ActiveWorkbook.FullName
With CreateObject("new:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}")
.SetText path
.PutInClipboard
End With
End Sub
@toagit
toagit / deleteNonListFolder.bat
Created February 9, 2017 11:38
リストファイルに存在しないフォルダを削除する
@echo off
pushd %0\..
setlocal enabledelayedexpansion
set "TARGET_FOLDER=D:\xxxx"
for /f "tokens=*" %%a in ('dir %TARGET_FOLDER% /b /a:d') do (
set SHOULD_DEL=true
for /f "tokens=1* skip=1" %%i in (include.list) do (
if "%%a"=="%%j" (
echo [DEBUG] -- バックアップ対象:%%j
@toagit
toagit / shutdown.bat
Last active January 16, 2017 05:09
指定時刻にシャットダウンするWindowsBatch ATやタスクスケジューラーが使えない環境用
@echo off
rem 指定時刻にシャットダウンするバッチ
rem 秒は許容誤差とし、算出しない
rem 18:00にシャットダウン
set HOUR=18
set /a H=%HOUR%-1-%TIME:~0,2%
set /a M=60-%TIME:~3,2%
echo %HOUR%時まで%H%時間%M%
@toagit
toagit / IF_NonUpperLower
Created August 29, 2016 08:49
コマンドプロンプト 大小文字区別しない判定
set /p IS_EXEC=実行しますか?[y/n]
if /i not "%IS_EXEC%"=="y" (
echo 処理をキャンセルします。
goto END
)
echo 終了しました。
:END
pause
@toagit
toagit / ExportAllModule.vbs
Created August 1, 2016 05:22
vbaプロジェクトの全てのモジュールをエクスポートする
'全モジュールエクスポート
'
'Excelの設定を以下の通りに変更すること
'1)オプション -> セキュリティーセンター -> [セキュリティーセンターの設定]ボタン押下
'2)マクロ設定(左ペイン) -> [VBAプロジェクトオブジェクトモデルへのアクセスを信頼する] チェックON
Public Sub ExportAllModule()
Dim destDir As String
With CreateObject("WScript.Shell")
destDir = .SpecialFolders("Desktop") & "\modules"
@toagit
toagit / ActiveXTabOrder.vbs
Last active July 25, 2016 05:12
ActiveXコントローラーでタブ移動の実装サンプル
Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
Call MoveNextController(KeyCode, TextBox2)
End Sub
Public Sub MoveNextController(ByVal KeyCode As MSForms.ReturnInteger, nextCtrl As Object)
If KeyCode = vbKeyTab Or KeyCode = vbKeyReturn Then
nextCtrl.Activate
End If
End Sub
@toagit
toagit / ClearIECache.bat
Created March 18, 2016 03:20
IEのキャッシュクリアバッチ
@echo off
cd /d %~dp0
echo IEのキャッシュをクリアします。
RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 255
echo IEのキャッシュをクリアしました。
pause > NUL
@toagit
toagit / ConvertWscriptToCScript.vbs
Created March 10, 2016 06:15
必ずCscriptで動かすスクリプト
If InStr(LCase(WScript.FullName), "wscript") > 0 Then
WScript.CreateObject("WScript.Shell").Run("CScript """ & WScript.ScriptFullName & """ //Nologo " & WScript.Arguments(0))
WScript.Quit
End If
MsgBox WScript.Arguments(0)
@toagit
toagit / ConvertListToArrayRange.vbs
Last active March 10, 2016 02:20
コレクションをセル範囲に設定可能な2次元配列に変換します。 コレクションのvalueには1行分のデータをIndex0から設定してください。 <Collection 配列 変換>
'コレクションをセル範囲に設定可能な2次元配列に変換します。
'コレクションのvalueには1行分のデータをIndex0から設定してください。
Public Function ConvertListToArrayRange(list As Collection) As Variant()
Dim rowCnt As Long
Dim colCnt As Long
rowCnt = list.Count
colCnt = UBound(list(1))
Dim arr() As Variant
値(10進) 定義 意味
-----------+--------------------------------+--------------
1 ROLE_SYSTEM_TITLEBAR タイトルバー
2 ROLE_SYSTEM_MENUBAR メニューバー
3 ROLE_SYSTEM_SCROLLBAR スクロールバー
4 ROLE_SYSTEM_GRIP グリップ
5 ROLE_SYSTEM_SOUND サウンド
6 ROLE_SYSTEM_CURSOR カーソル
7 ROLE_SYSTEM_CARET キャレット
8 ROLE_SYSTEM_ALERT アラート