Skip to content

Instantly share code, notes, and snippets.

@nobrinskii
nobrinskii / gist:4134517
Created November 23, 2012 08:26
文字列の配列をクイックソートする
'------------------------------------------------------------------------------
'文字列として配列をクイックソート
'------------------------------------------------------------------------------
'【引数】配列(参照渡し)、最小インデックス、最大インデックス
'【戻り値】
'【備考】
Public Sub QSortTexts(ByRef varArray As Variant, _
lngMini As Long, lngMax As Long)
Dim i As Long
Dim j As Long
@nobrinskii
nobrinskii / gist:3917476
Created October 19, 2012 10:40
[vba/excel]出力するファイルで重複のないフルパスを取得する
'-------------------------------------------------------------------------------
'これから出力するファイルのフルパスを取得する
'-------------------------------------------------------------------------------
'【引数】出力先フォルダのパス(末尾に"\"あり),ファイル名(拡張子は含まない)
'【戻り値】出力するファイルのフルパス
'【備考】出力先に同名のファイルがある場合は"(x)"形式の文字列をファイル名の末尾に
' 付ける。
Private Function GetOutputFileFullPath(strFolderPath As String, _
strFileName As String, strExtension As String) As String
Dim FS As Object
@nobrinskii
nobrinskii / gist:3235906
Created August 2, 2012 09:38
配列をクイックソートする
'------------------------------------------------------------------------------
'配列をクイックソート
'------------------------------------------------------------------------------
'【引数】配列(参照渡し)、最小インデックス、最大インデックス
'【戻り値】
'【備考】
Public Sub Q_Sort(ByRef varArray() As Variant, _
lngMini As Long, lngMax As Long)
Dim i As Long
Dim j As Long
@nobrinskii
nobrinskii / gist:2963865
Created June 21, 2012 04:37
[vba/excel]フォルダのパスを選択ダイアログで取得する
'-------------------------------------------------------------------------------
'フォルダのパスを選択ダイアログで取得する
'-------------------------------------------------------------------------------
'【引数】
'【戻り値】出力先のフォルダのパス
'【備考】選択ダイアログの初期値はデスクトップ。
Private Function GetTargetFolderPath() As String
Dim WSH As Object
Dim strInitFolder As String
Dim strOutput As String
@nobrinskii
nobrinskii / gist:2922524
Created June 13, 2012 07:27
[vba/access]DBの特定テーブル内に特定のフィールド名が存在するか確認する
"Microsoft DAO *** Object Library"が参照されていることが前提。
'テーブル名をキー、該当テーブルのフィールド名をキーに持つDictionaryを値として持つDictionary
Private mDicFieldNames As Object
Public Sub Sample()
Const strTableName As String = "TestTable"
Const strFieldName As String = "TestField"
Call GetFieldNames(mDicFieldNames)
@nobrinskii
nobrinskii / gist:2914805
Created June 12, 2012 03:57
[vba/excel]文字列中の数字を漢数字に置き換える
Public Sub sample()
Const strExample As String = "今日は1月12日です。"
Debug.Print ConvertNumbersToKanSuji(strExample)
End Sub
'-------------------------------------------------------------------------------
'文字列中の数字を漢数字に置き換える
'-------------------------------------------------------------------------------
'【引数】文字列
@nobrinskii
nobrinskii / gist:2307652
Created April 5, 2012 02:59
[vba/excel] フォルダに存在するファイルの名前一覧を取得する
'------------------------------------------------------------------------------
'フォルダに存在するファイルの名前一覧を取得する
'------------------------------------------------------------------------------
'【引数】ファイル名を格納するDictionary、検索するパス
'【戻り値】
'【備考】引数のDictionaryにファイル名を格納する。
' サブフォルダは考慮しない。
Private Sub GetExistingFileNames(dicFileName As Object, strPath As String)
Dim FSO As Object
Dim objFile As Object
@nobrinskii
nobrinskii / gist:2300488
Created April 4, 2012 11:35
[vba/excel] エクセルのシートを保護する
ActiveSheet.Protect DrawingObjects:=False, _
Contents:=True, _
Scenarios:=False, _
AllowFormattingCells:=True, _
AllowFormattingColumns:=True, _
AllowFormattingRows:=True, _
AllowInsertingColumns:=True, _
AllowInsertingRows:=True, _
AllowInsertingHyperlinks:=True, _
AllowDeletingColumns:=True, _
@nobrinskii
nobrinskii / gist:2297890
Created April 4, 2012 04:59
D&Dで受け取ったパスのファイルに含まれるワークシートの保護を設定する。
#!ruby -Ks
require 'win32ole'
wsh = WIN32OLE.new('WScript.Shell')
#
# ユーザーが使用する前に設定する項目
#
SHEET_LOCK = true #true:保護設定 false:保護解除
PROTECT_PASSWORD = "" #パスワード(必要なときのみ)
@nobrinskii
nobrinskii / gist:2291333
Created April 3, 2012 11:53
エクセルVBAファイルにファイルパスを投げるドロップレット
#!ruby -Ks
require 'win32ole'
wsh = WIN32OLE.new('WScript.Shell')
#
# 事前設定
#
MACRO_FILE = "MacroFileName"
MACRO_NAME = "MacroName"