エクセルでデータ-表を作成しているのですが、
このデータ-表に2000枚以上ある画像データを取り込みたいorリンク
させたいのですが、どの本をみても1データずつ取り込む方法しか
記載されていません。
なんとか、一括で画像をエクセル2000に取り込むorリンクさせることはできないでしょうか?
教えてください。お願いします。

このQ&Aに関連する最新のQ&A

A 回答 (1件)

ファイルがどの様に保存されているか分かりませんし、画像の種類も不明なため、下記は、フォルダを指定し、jpgファイルを処理する例です。


セルB2から下に画像リンクしたファイル名を表示していきます。(Excel2000で確認)
応用してみてください。

ツール→マクロ→Visual Basic Editor でVBE画面に移り、挿入→標準モジュールで挿入した標準モジュールのコードウインドウに貼り付けます。

Sub HyperLinksSet()
  Dim myDrvDir As String '画像があるドライブ、フォルダ
  Dim myPicPat As String '画像の拡張子
  Dim rgTop As Range '表示するセルの先頭

  Dim myPic As String '検索した画像
  Dim Pcot As Integer '画像のカウンタ

  myDrvDir = "D:\001\Gazou" '*** これをセット ***
  myPicPat = "*.jpg"     '*** これをセット ***
  Set rgTop = Range("B2")  '*** これをセット ***

  myPic = Dir(myDrvDir & "\" & myPicPat) '検索する
  While myPic <> ""
    ActiveSheet.Hyperlinks.Add _
      rgTop.Offset(Pcot, 0), myDrvDir & "\" & myPic, TextToDisplay:=myPic

    Pcot = Pcot + 1
    myPic = Dir '次の検索
  Wend
End Sub
    • good
    • 0
この回答へのお礼

大変ありがとうございました。すっごく参考になりました。
と言うかおかげ様で出来ました。涙ものです。

お礼日時:2001/11/21 15:36

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QEXCELにcsv形式の外部データを取り込む際にカンマ区切りで取り込も

EXCELにcsv形式の外部データを取り込む際にカンマ区切りで取り込もうとした場合、csvデータの同一セル内に改行データがあると、ずれて表示されてしまいます。
改行を取り除くのはclean関数があることは知っていますが、マクロを利用して、EXCELのデータ→外部データの取り込みの選択だけで取り込む方法はないでしょうか?ご教示ください。

Aベストアンサー

Sub try()
  Dim WRK As String '一時作業ファイル名。削除するので既存ファイル名と重複させないように。
  Dim buf As String
  Dim tmp As String
  Dim n  As Long
  Dim f

  '読込みファイルを選択
  f = Application.GetOpenFilename("csv,*.csv")
  If VarType(f) = vbBoolean Then Exit Sub
  '作業ファイル名設定
  WRK = Application.DefaultFilePath & "\temporary.csv"
  '読込みファイルOpen
  n = FreeFile
  Open f For Input As #n
  buf = StrConv(InputB(LOF(n), #n), vbUnicode)
  Close #n
  '置換(セル内改行を半角スペースに)
  With CreateObject("VBScript.RegExp")
    .Global = True
    .Pattern = "([^\r])(\n+)"
    buf = .Replace(buf, "$1 ")
  End With
  '作業ファイルOpen
  n = FreeFile
  Open WRK For Output As #n
  Print #n, buf
  Close #n
  '[外部データの取り込み]
  With Sheets.Add
    With .QueryTables.Add(Connection:="TEXT;" & WRK, _
               Destination:=.Range("A1"))
      .AdjustColumnWidth = False
      .TextFileParseType = xlDelimited
      .TextFileTextQualifier = xlTextQualifierDoubleQuote
      .TextFileCommaDelimiter = True
      .Refresh BackgroundQuery:=False
      .Delete
    End With
  End With
  '作業ファイル削除
  Kill WRK
End Sub

Excelで作成したcsvファイルで、セル内改行が含まれている場合は上記で読み込めるはずです。
そのcsvファイルをテキストエディタで編集してしまった場合は、うまくいかなくなるかもしれません。

'[外部データの取り込み]...以降、 Kill WRK までのコードは、無くても構いません。
取り込み前にセル内改行を置換してしまえば、
あとは手作業ででも[外部データの取り込み]ができます。

Sub try()
  Dim WRK As String '一時作業ファイル名。削除するので既存ファイル名と重複させないように。
  Dim buf As String
  Dim tmp As String
  Dim n  As Long
  Dim f

  '読込みファイルを選択
  f = Application.GetOpenFilename("csv,*.csv")
  If VarType(f) = vbBoolean Then Exit Sub
  '作業ファイル名設定
  WRK = Application.DefaultFilePath & "\temporary.csv"
  '読込みファイルOpen
  n = FreeFile
  Open f For Input As #n
  buf = StrConv(InputB(LOF(n),...続きを読む

Qエクセル2000にMicrosoft Queryを使って外部データを取り込むときのエラーについて

Microsoft Queryを実行してエクセル2000に外部データの取り込みを行おうとすると、バージョン3.0以降のODBCが必要です。というメッセージが表示されてしまい取り込みができません。
Microsoft Queryのセットアップは完了しています。

ODBC3.0をセットアップしなくてはならないと思うのですが、このやり方がわかりません。ご存知の方教えて下さい。

Aベストアンサー

MicrosoftのFTPサイトから入手されてはいかがですか?

ftp.microsoft.comのftpサイトの
/developer/ODBC/public/odbc3sdk.exe
があります。
ftpが利用可能であれば、
コマンドプロンプトで
ftp ftp.microsoft.com

User (ftp.microsoft.com:(none)):anonymous
Password : 礼儀として、自分のメールアドレスを入力

Anonymous User loged in.

ftp>binary
ftp>cd /developer/ODBC/public
ftp>get odbc3sdk.exe

途中の、Ackなどは、省略してあります。getした、ディレクトリィにファイルが転送されます。

これが面倒であれば、FTP Explorerをダウンロードします。GUIの環境で、ファイルの転送が出来ます。

http://www.portnet.ne.jp/tech/ftp/ftpx/ftpx.html

ダウンロードしたファイルを展開、実行すると、導入が完了すると、デスクトップにFTP Explorerのアイコンが出来ます。これを開いてツールバーの
ツール→Connect
Microsoftのサイトに自動的に入れます。そして、
/developer/ODBC/public
とサブディレクトリィに入ってゆけば、どのレベルのODBCのSDKでも入手できます。通常は、MSDNのライブラリィにはいっているのですが。MSDNのSubscriberでないとありませんので、FTP Explorerで入手するのが一番簡単な方法かと思います。ODBCは相当古いものです。(かなり枯れたソフトなのでしょうか)

参考URL:http://www.portnet.ne.jp/tech/ftp/ftpx/ftpx.html

MicrosoftのFTPサイトから入手されてはいかがですか?

ftp.microsoft.comのftpサイトの
/developer/ODBC/public/odbc3sdk.exe
があります。
ftpが利用可能であれば、
コマンドプロンプトで
ftp ftp.microsoft.com

User (ftp.microsoft.com:(none)):anonymous
Password : 礼儀として、自分のメールアドレスを入力

Anonymous User loged in.

ftp>binary
ftp>cd /developer/ODBC/public
ftp>get odbc3sdk.exe

途中の、Ackなどは、省略してあります。getした、ディレクトリィにファイルが転送...続きを読む

Qエクセル、別表にリンクで飛ばしたデータを固定し、元表に新たなデータを入力する方法

エクセルの使い方で質問です。

元表A、例えば「支払い明細書」の合計額を、別表B「年間収入一覧表」にリンクさせます。
このBに飛ばしたデータは固定したまま、Aの数値を書き換える方法はあるのでしょうか?

例えば、5月分のA発行終了後、6月分、7月分…と書き換えしたいのですが、Bの5月分、6月分…のデータはそのまま残したいのです。

Aを月別に作成する方法しか思いつきませんが、もっといい方法があればぜひ教えて下さい!!

Aベストアンサー

マクロを使ってコピーをするか、
今月分のデータを作成する直前にB表の前月分のデータを示す欄をコピーして前月分として作成してある場所に「値として貼り付け」かな。

自分は面倒だから後者を採用する。(マクロ書くの面倒)
残したいデータを示すセルに含まれる数式をすべてキャンセルして、数式の結果の値だけにするのがポイント。

QEXCELの表をWordに縮小して取り込む方法

過去ログも検索してのですが見当たらないので質問します
エクセルの表を形式を選択してエクセル形式でワードに貼り付けたのみですと、エクセルの表が横長でワードの用紙が縦だとエクセルの表が入りきらないことがあります。多少表が見づらくなってもかまいませんのでエクセルの表を縮小して表示させる方法はないでしょうか
貼り付けた表の右下をもって左上にドラッグすると表示される表が一部になってしまいます。
よろしくお願いいたします

Aベストアンサー

wordでexcelの表を編集しますか?

もし,編集しないなら,
編集→形式を指定して貼り付け
(word2007なら上のバーの貼り付けのすぐ下に,形式を指定して貼り付けがあるはず)
で,画像(jpegや拡張メタファイルなど)として貼り付けるのはどうでしょう?

Qホームページ上の表をエクセルに取り込むには?

教えてください。
ホームページなどに載っている表、例えばショップの一覧表、名簿などの表を、エクセルに取り込みたいのですが、いい方法がありますでしょうか?
私が思いつくのは、一個一個コピペするという原始的な方法しか思いつかないのですが・・・
簡単な方法があったらご教授ください。

Aベストアンサー

IEで、表をドラッグして選択し、編集→コピー し、
Excelで、編集→形式を選択して貼り付け→HTML Format でできませんか?


人気Q&Aランキング

おすすめ情報