Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


32406 / 76734 ←次へ | 前へ→

【49564】Re:ツリー表示とリンク貼りしたファイルの自動更新
発言  Jaka  - 07/6/11(月) 16:00 -

引用なし
パスワード
   ▼みるみる さん:
>≪今まで試してみた内容≫
>CMDを使って「tree /F」のコマンドを利用し、膨大な量のファイルに対するツリー表示を「.txt」ファイルで保存し、それをExcelの「テキストファイルウィザード」より開いてツリー表示をExcelに落とすことには成功しました。
>ただ、Excelのマクロでどこまでその作業を設定できるのか分からず、もし設定できなければ他のどんな方法でツリー表示を作ればいいかも困っているところです。
これをマクロで行えばいいのでしょうか?
もっともこれ以外は解らないけど...。

Sub trrtrr()
Dim Fpat As String, ComL As String, ReadData As String
Dim TB() As String, FileNo As Integer, i As Long, ii As Long
Dim DFoP As String
DFoP = CurDir()
Fpat = "C:\TrrFL.txt" 'テキスト1時保存場所
TrFld = "C:\"     'ツリー表示フォルダ
'カレントディレクトリーを移す。
CreateObject("WScript.Shell").CurrentDirectory = TrFld
'ドスコマンド
ComL = "COMMAND.COM /C tree>" & Fpat
Call Shell(ComL, vbHide)

FileNo = FreeFile
Open Fpat For Input As #FileNo
i = 0
Do Until EOF(FileNo)
  i = i + 1
  Line Input #FileNo, ReadData
Loop
Close #FileNo
DoEvents

ReDim Preserve TB(1 To i, 1 To 1)
ii = 0
FileNo = FreeFile
Open Fpat For Input As #FileNo
Do Until EOF(FileNo)
  ii = ii + 1
  Line Input #FileNo, TB(ii, 1)
Loop
Close #FileNo

'65536行以上の場合だった時を考えて取りあえず。
If i > 65536 Then
  MsgBox "プログラム改良必須"
  Erase TB
  Kill Fpat
  Exit Sub
End If

Range("A1").Resize(i).Value = TB
DoEvents
Erase TB
Kill Fpat '1時保存テキストを削除
DoEvents
End Sub

5 hits

【49559】ツリー表示とリンク貼りしたファイルの自動更新 みるみる 07/6/11(月) 10:21 質問
【49564】Re:ツリー表示とリンク貼りしたファイルの... Jaka 07/6/11(月) 16:00 発言
【49567】Re:ツリー表示とリンク貼りしたファイルの... みるみる 07/6/11(月) 16:33 お礼
【49588】Re:ツリー表示とリンク貼りしたファイルの... Jaka 07/6/12(火) 10:21 発言
【49593】Re:ツリー表示とリンク貼りしたファイルの... みるみる 07/6/12(火) 11:28 お礼

32406 / 76734 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free