探すファイルのリンク一覧をつくる
仕事(?)を教えて貰う
このフォルダにAの処理のファイルのファイルがはいっています
B処理フォルダには・・・、それから次のフォルダには・・・
A処理では、フォルダに前回にやったものが保存してありますので、
それを探して、それを開いて・・・
ハイ(はぁ、いつもの)これ(の繰り返し)ですね。
〇〇フォルダのなかから〇〇ファイルを探して。は仕事?
確かに仕事です。
手を動かし目で探せば、ミスも少ないかもしれません。
まあ、これから紹介する方法を見せても、反応の大半が
なぜ、そこまでするの?他の人も出来ないようだと後で困るじゃあ?
(自分はスゴイねと言って貰いたかったのかなーと落ち込んだりする)
もとより、システム化を推進する会社の方にはオススメしません。
でも、これから行う仕事で、同じこと繰り返すことが苦手で、ユーツになる方はご検討ください。
ExcelVBAは、プログラミングが初めて方には、他の言語に比べて断然ハードル低い。ここでは説明省略。noteにいっぱいある(筈)
①エクセルが入ったPC(アマゾンでポチってインストールするとか)
②○○.xlsmのファイルを作る
②エクセルの開発タブを表示させ、標準モジュールを作る
③VBAのエディターでsub 名前() と入力 enterをおしてEnd Subを表示
④作成したVBAをボタンを作成し割り当てる
他の言語に比べ、入門ハードル低いのがExcelの特徴です。
noteの先輩方、紹介させていただきますので、ご一報ください。
ExcelとAccessのアプリ塾 さん
Excel でマクロ(VBA)を書く
https://note.com/muramoto1041/n/n9aefb11b5ed5
1.エクセルシートをこうして。やっと本題で、すみません。
①探すフォルダの場所(ディレクトリ)
②検索ワード
③ファイル名とリンクを書き出すエリアを決める
④VBA(マクロ)を動かすボタンを設置する
2.標準モジュールにコードをコピペ
Sub リンク一覧作成()
Application.ScreenUpdating = False 'スクリーンOFF
Sheets("Sheet1").Select 'シートの選択
'前に書き出した一覧表クリア
maxRow = Range("C65536").End(xlUp).Row
If maxRow >= 12 Then
Range(Cells(12, 3), Cells(maxRow, 4)).Select
Selection.ClearContents
End If
Range("C12").Select
'一覧表をつくる------------------------------------始まり
'ターゲットのフォルダ名:ディレクトリ名
pt = Range("C5")
'検索ワード
word_s = Range("C8")
'書き出し行
gyo = 12
fn = Dir(pt & "\*.*") '1個目のファイル名を格納
Do While fn <> ""
If InStr(fn, word_s) > 0 Then '検索ワードが含まれる場合に
Cells(gyo, 3) = fn 'ファイル名を書き出し
'ハイパーリンクの設定 Cells(gyo, 4) = pt & "\" & fn だけでも良い場合も
ActiveSheet.Hyperlinks.Add anchor:=Cells(gyo, 4), Address:=pt & "\" & fn
gyo = gyo + 1
End If
fn = Dir() '2個目以降のファイル名を格納
Loop
'一覧表をつくる------------------------------------終わり
Application.ScreenUpdating = True 'スクリーンON
End Sub
3.動いてるトコロはこんなカンジ
完全手動でフォルダの中を探してファイル開くより速いと。
自分はストレス軽減のほうに意味ありますが。
4.補足
不明点は、ご連絡いただいて結構です。
(すぐにとか、直接)お答えできないときはすみません。
note初心者なんで、noteのコミュニケートの方法よく分かりませんが ^^;
Twitterでも。どのツイートでも返信に「noteを見た」で良いです。
出来高急増!@assist_life https://twitter.com/assist_life
上手くファイル名拾えないことありますか?
自分がやっても上手くいかないこと一杯ありますよね。
その自分のコピーロボットです。
少しでもアシストしてくれようとしてくれる、自分のロボットです。
この記事が気に入ったらサポートをしてみませんか?