- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
すみません、書き忘れていました。H1にフォルダをフルパスで入れて下さい。 解説はまた今度、暇なときに作ります。
その他の回答 (2)
- SI299792
- ベストアンサー率47% (774/1619)
この画像、セル位置が判りません。セル位置の分かる画像を上げるか、又はどこにデータがあるか説明して下さい。(最初に書いておくべきでした) 微かに見えるので数字を入れるのがB列、リンクを張るのがH列だと思います。 (こんな苦労を回答者にさせないでください) >出来れば、数字が反映されると同時に紐づくことが可能でしょうか? 難しいです。 ・計画表を貼り付けるシート名・セル位置、ハイパーリンクのシート名が分らないのでできない ・貼り付ければ動く設定は、操作ミス等でデータをいじった時も動くのでやめた方がいい というわけで、ボタンを押したら動くようにしました。 Option Explicit ' Sub Macro1() Dim RInp As Long Dim NowData As Integer Dim OldData As Integer Dim FileName As String Dim NewName As String ' Range("H2:H" & Rows.Count).Clear Application.ScreenUpdating = False ' For RInp = 2 To Cells(Rows.Count, "B").End(xlUp).Row NowData = Cells(RInp, "B") ' If NowData > 0 Then FileName = Dir([H1] & "\" & NowData & "*.pdf") ' Do While Val(FileName) > NowData FileName = Dir Loop ' If Val(FileName) = NowData Then Cells(RInp, "H") = "=HYPERLINK(""" & [C1] & "\" & FileName & """,""" _ & Replace(FileName, ".pdf", "") & """)" Else Cells(RInp, "H") = "該当ファイルなし" End If End If Next RInp End Sub
補足
大変、申し訳ありませんでした。行列が切れていることに気づいていませんでした。数字はB列、リンクはH列で大丈夫です。マクロが凄すぎて、頭がフリーズしています。暗号にしか見えません・・・ C1にPdfのホルダーをフルパスで入力すればよろしいでしょうか?この表は例なので、実際のものに反映させるときは、C1,B,Hのみを変更すれば大丈夫でしょうか? それと、私がマクロの知識が殆ど無いので、恐れ入りますがこのマクロの意味を簡単に教えて頂く事可能でしょうか?解読するようなソフトとかあればいいのですが・・・かなりお手数になるなら大丈夫です。
- SI299792
- ベストアンサー率47% (774/1619)
VBA を使うことになりますが、 ・数字を入力した時に設定される ・全数字入力後、ボタンを押したら設定される どっちがいいですか❓
補足
対象の数字は都度入力ではなく、別シートに日々の計画表を貼り付けると、関数で数字が反映されます。なので、出来れば、数字が反映されると同時に紐づくことが可能でしょうか? 宜しくお願いいたします。
補足
お手数をおかけして、申し訳ありません。 宜しくお願い致します。