- Excel
- 2009-02-20 - 更新:2012-03-23
関数を使用して文字列をカンマ区切りにしたい時
VBではなく、セルに直接入力したい場合に使用
TEXT関数を使用する
TEXT(10000, "#,###")
結果
10,000
関数を使用して文字列をカンマ区切りにしたい時
VBではなく、セルに直接入力したい場合に使用
TEXT関数を使用する
TEXT(10000, "#,###")
結果
10,000
特殊なフォルダはパソコンによって、あるいはWindowsによって場所がまちまちです。
そんなときそのパスを取得する方法を知っていれば便利ですね。
サンプル1では、デスクトップとマイドキュメントのパスを知ることができます。
サンプル2では、Windowsのセットアップ場所、システムフォルダ、一時フォルダのパスを取得できます。
Public Sub GetSpecialFolder_1() '特殊フォルダのパスを取得_1 Dim ws Set ws = CreateObject("WScript.Shell") MsgBox "Desktop= " & ws.SpecialFolders("Desktop") MsgBox "MyDocuments= " & ws.SpecialFolders("MyDocuments") End Sub
構文 Object.GetSpecialFolder(SpecialFolder)
設定項目 内容
Object FileSystemObjectオブジェクトを指定[省略不可]
SpecialFolder 取得するフォルダの種類を定数で指定[省略不可]
GetSpecialFolderメソッドは、Windowsフォルダ、Systemフォルダ、テンポラリフォルダを取得します。
引数には次の表の定数を指定します。
・引数に指定する定数
定数 値 内容
WindowsFolder 0 Windowsフォルダ
SystemFolder 1 Systemフォルダ
TemporaryFolder 2 テンポラリフォルダ。環境変数TMPより取得
サンプルは、Windowsフォルダ、Systemフォルダ、テンポラリフォルダを順に取得して、メッセージダイアログに表示しています。
● サンプル ●
'特殊フォルダ(Windowsフォルダなど)を取得する ' [ツール]→[参照設定]で「Microsoft Scripting Runtime」をチェック Sub Sample() Dim myFileSystem As New Scripting.FileSystemObject MsgBox "Windowsフォルダ: " & _ myFileSystem.GetSpecialFolder(WindowsFolder) MsgBox "システムフォルダ: " & _ myFileSystem.GetSpecialFolder(SystemFolder) MsgBox "テンポラリフォルダ: " & _ myFileSystem.GetSpecialFolder(TemporaryFolder) End Sub
● 補足 ●
FileSystemObjectオブジェクトは利用する前に参照設定を行う必要があります。
参照設定は、[ツール]メニューから[参照設定]コマンドを選択して[参照設定]ダイアログボックスを表示します。
ダイアログボックスが表示されたら、一覧から「Microsoft Scripting Runtime」をチェックして[OK]ボタンをクリックします。
Form_フォーム.コントロール名.value
などで値を取得できるがインスタンスを生成したほうが簡単で後が楽。
Dim Fm As Form
と、プロシージャ外で変数を定義しておき、
Set Fm = Form_フォーム
でオブジェクトのインスタンスを生成
あとは「Fm.コントロール名.Value」でアクセスできる
Private Function array_push(source As Variant, destination As String, flag As Boolean) As String Dim Ary() As String Dim delimiter As String Select Case (flag) Case True '選択地域文字列 delimiter = " " Case False '選択地域 delimiter = ":" End Select If InStr(source, destination) < 0 Then array_push = source Exit Function End If If Not IsNull(source) Then Ary = Split(source, delimiter) ReDim Preserve Ary(UBound(Ary) + 1) As String Ary(UBound(Ary)) = destination array_push = Join(Ary, delimiter) array_push = value_splice(array_push, ":") DoEvents array_push = repRecur(array_push, ":") Else array_push = destination End If End Function