[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『ハイパーリンクの連続設定』(zunzun)
とあるフォルダ内に「S_H23_001_ABC_KB.pdf」言う名前のPDFファイルが001〜999まであります。このファイルを、セルA1〜A999にハイパーリンクで関連付けするマクロはどのようにすればよいのでしょうか?ファイル名の先頭のS_H23_は変わりません。よろしくお願いいたします。
< 使用 Excel:Excel2010、使用 OS:Windows7 >
それだけであれば、 =HYPERLINK("S_H23_" & Text(ROW(A1),"000") & "_ABC_KB.pdf") として、オートフィルでできそうですがマクロが必須でしょうか。
別フォルダであれば、フォルダパスを含めてパスを記述してください。 第2引数で表記は別表記にできます。 http://www.eurus.dti.ne.jp/~yoneyama/Excel/kansu/hyper.htm (Mook) 2014/01/30(木) 16:38
例えばB1セルにファイル名の共通部分を入れるとする。 そして式を
=HYPERLINK("S_H23_" & Text(ROW(A1),"000") & "_" & $B$1 & ".pdf")
とするとB1セルの値を変えることで「ABC_KB」部分が違うものにも対応できる。 (ねむねむ) 2014/01/30(木) 17:46
>「S_H23_001_ABC_KB.pdf」言う名前のPDFファイルが001〜999まであります。 の実際は S_H23_nnn_****.pdf(nnn = 001 〜999、*** は不定) ということでしょうか。
とりあえずのサンプルです。 Sub Sample() Const targetFolder = "D:\とあるフォルダ"
Dim ws As Worksheet Set ws = ActiveSheet
Columns("A").Clear
Dim file Dim n As Long Dim r As Long For n = 1 To 999 file = Dir(targetFolder & "\S_H23_" & Format(n, "000") & "_*.pdf") If file <> "" Then r = r + 1 ws.Hyperlinks.Add Anchor:=ws.Cells(r, "A"), _ Address:=targetFolder & "\" & file, TextToDisplay:=file End If Next End Sub
(Mook) 2014/01/30(木) 19:58
とりあえずの拡張サンプルです。
Sub Sample() MakeHyperLinks ActiveSheet, "D:\とあるフォルダ1", "S_H23_", True MakeHyperLinks ActiveSheet, "D:\とあるフォルダ2", "S_H24_" MakeHyperLinks ActiveSheet, "D:\とあるフォルダ3", "S_H25_" End Sub
Sub MakeHyperLinks(ws As Worksheet, targetFolder As String, preFix As String, Optional clearMode As Boolean = False) Dim r As Long If clearMode = True Then ws.Columns("A").Clear Else r = ws.Cells(Rows.Count, "A").End(xlUp).Row End If
Dim file Dim n As Long For n = 1 To 999 file = Dir(targetFolder & "\" & preFix & Format(n, "000") & "_*.pdf") If file <> "" Then r = r + 1 ws.Hyperlinks.Add Anchor:=ws.Cells(r, "A"), _ Address:=targetFolder & "\" & file, TextToDisplay:=file End If Next End Sub (Mook) 2014/01/31(金) 20:15
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.