Excel VBA質問箱 IV

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

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


27904 / 76732 ←次へ | 前へ→

【54141】Re:LoadPictureを使ってユーザフォームにpdfのイメージを表示させたい
質問  31  - 08/2/26(火) 14:43 -

引用なし
パスワード
   ▼ichinose さん:

こんにちは。

>▼31 さん:
>
>こんばんは。
>
>>
>>ユーザフォーム上にPDFのイメージを表示させたいです。
>>その際、表示するファイル名を変数としていますが、コンパイルエラーが発生し、
>>記述方法が分からないので、ご教示をおねがいします。
>>
>>***以下ソースです。***
>>
>>'選択対象データの画像表示
>>  Me.Image1.Picture = _
>>  LoadPicture("c:\" & Filename.pdf)
>
>Imageコントロールって、Pdfはサポートされていないですよ!!
>
>
>ユーザーフォームでPDFなら、
>その他のコントロールに
>
>ActiveX用Acrpbatコントロール
>(pdf.ocx)というのがPCにあれば、使えます。
>
>これを使えば、
>
>Private Sub UserForm_Initialize()
>  Pdf1.LoadFile "D:\xxxx.pdf"
>End Sub
>
>なんてコードでPDFファイルが表示されます。
>
>ためして見てください


ご回答ありがとうございます。
早速、教えて頂いた要領でPDFファイルの表示ができるようになりました。
ありがとうございました。

ただ、定数での表示はできるのですが、変数(ワイルドカードを含む)でのPDFファイルの
表示が上手くいきません。
コーディングの問題だと思いますので、教えて頂けますでしょうか。

Private Sub Userform_Initialize()
    Pdf1.LoadFile "c:\ab001.pdf"
End Sub
だと「ab001.pdf」というファイルが表示できます。


Cドライブ以下に「ab001.pdf」や「e002gh.pdf」、「003ut.pdf」というPDFファイルがある場合に
Filenameに「001」や「002」「003」を代入して、Cドライブ内の該当するPDFファイルを表示したいです。
Filenameの前後にワイルドカードの"*"を付けることにより検索をしたいのですが、上手くいきません。


----以下コーディングです。----

'BD1には処理の状況によって001,002,003が入ってくる。
Set name = Worksheets(1).Range("BD1")

With Application.FileSearch
  .NewSearch
  .LookIn = "C:\"
  .Filename = "*name*.pdf" ← ここでワイルドカードを指定したいです。
  If .Execute > 0 Then
    For i = 1 To .Execute
      Cells(i + 1, 50).Value = .FoundFiles(i)
    Next i

'選択対象データの画像表示
  Pdf1.LoadFile "c:\Filename.pdf"


上記の箇所でワイルドカード"*"を定義すればよいと思うのですが、
コーディングの書き方が分からないので教えてください。


よろしくお願い致します。
0 hits

【54118】LoadPictureを使ってユーザフォームにpdfのイメージを表示させたい 31 08/2/25(月) 16:22 質問
【54123】Re:LoadPictureを使ってユーザフォームにp... ichinose 08/2/25(月) 18:19 発言
【54141】Re:LoadPictureを使ってユーザフォームにp... 31 08/2/26(火) 14:43 質問
【54155】Re:LoadPictureを使ってユーザフォームにp... VBWASURETA 08/2/26(火) 21:36 回答
【54178】Re:LoadPictureを使ってユーザフォームにp... 31 08/2/27(水) 22:54 お礼

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