外出自粛中でも楽しく過ごす!QAまとめ>>

Excelにて、文字をクリックすると、ファイルをダウンロードするようにしたい。
Webページみたいに文字箇所をクリックすると、ファイルをダウンロードするにはどういう風にすればよろしいでしょうか? VBAで小細工する事も検討しています。
例えば、セルB2にあらかじめ、ダウンロード.txt などファイルリンクを作ってダウンロードする。
Excel標準のハイパーリンクではなく直接ダウンロードすることってできるのでしょうか?
 ※ダウンロードするテキストファイルはファイル容量少ないです。

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

A 回答 (2件)

>セルB2にあらかじめ、ダウンロード.txt などファイルリンクを作ってダウンロードする。


のダウンロードとは、具体的にどう云う事でしょう。
もし、エクセルのファイルと同じフォルダーにダウンロード.txtがあって
ダウンロード.txt を開いて、その内容を別のシートに張り付け
であれば

シート名のタブを右クリック
コードの表示をクリック
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

Workbooks.OpenText Filename:=ThisWorkbook.Path & "\" & Target.Value, Origin:= _
932, StartRow:=1, DataType:=xlDelimited, TextQualifier:=xlDoubleQuote, _
ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=False, Comma:=False _
, Space:=False, Other:=False, FieldInfo:=Array(1, 1), _
TrailingMinusNumbers:=True
ThisWorkbook.Sheets(1).Range("A1:B100").Value = ActiveWorkbook.Sheets(1).Range("A1:B100").Value
Windows(Target.Value).Close
End Sub
を張り付け
VBエディターを閉じる。
ダウンロード.txt と入っているセルをダブルクリックします。
    • good
    • 0

環境が有りませんのでサイトの紹介だけですが



URLDownloadToFile APIを使用してWebからファイルをダウンロードしてみた
http://www.ken3.org/vba/backno/vba120.html

使えそうならアレンジしてみてください。
    • good
    • 0

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

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

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

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

Qエクセル マクロで指定フォルダを開く

エクセルにて
指定フォルダを開く、マクロがあれば教えて頂けないでしょうか。
よろしくお願いいたします。

Aベストアンサー

こんにちは。

こういうものですか?
開くフォルダを変えたいときは targ に与えるパスを変更します。

Sub OpenFolders()
Dim targ As String
targ = "C:\"
Shell "C:\Windows\Explorer.exe " & targ, vbNormalFocus
End Sub

Qホームページでファイルをダウンロードさせる

お世話になります。
会社のホームページを制作中です。
マニュアルなどをアップしておき、ユーザーにダウンロードしてもらうページを作ろうと思っています。
<ベクターのような>
参考になる情報ありましたら教えてください。
宜しくお願いいたします。

Aベストアンサー

ダウンロードについて、
参考URLのページに分かりやすく書いてあるようです。
例もあるのでぜひ参考にしてください。

参考URL:http://www.tohoho-web.com/wwwxx013.htm

Qエクセルに書いた画像URLをダウンロードできるソフト

エクセルに書かれた画像のURLを使って
Web上にある画像を自動でダウンロード
できるソフトってありますか?

某ショッピングサイトに登録していた
画像が5000点程あり、エクセルにURLで
保存していますが近々削除されるようで
困っています。

自分で探してみましたが見つかりません
でした。

よろしくお願いします。

Aベストアンサー

Net Transport
http://ringonoki.net/tool/download/nettransport.html

Irvine
http://www.vector.co.jp/soft/win95/net/se218138.html

FlashGet
http://www.vector.co.jp/soft/win95/net/se218138.html

など

QExcel 文字列の前後に、特定の文字を付加したい

Excelで、ある列に不規則な文字列がならんでいます。
その文字列の前後に、いっせいに好きな文字を付加したいのです。
例えば、「AAA」という文字列の前後に
「BBBACCC」といったように
AAAといった文字列にBBBやCCCと一斉に付加したいです。
AAAはアルファベットや日本語等さまざまなのですが、
どうすればいいでしょうか?
教えてください。

Aベストアンサー

& で繋ぎます。

A1 セルの文字の前後に、ABC と DEF を付けたいなら、
別のセルに下記のような式を入れます。

="ABC" & A1 & "DEF"

QExcelのハイパーリンクのアドレスが勝手に変わる

Excel2000での出来事です。

自身のPCフォルダを素早く開くショートカット目的として
C:\Program Files\ などをハイパーリンクで設定しています。

設定してその日は問題なくクリックすることで目的のフォルダが開くのですが、
別の日に改めてクリックすると「このサイトのアドレスは正しくありません」
とメッセージが出てしまいます。

ハイパーリンクの編集を見てみると
C:\Program Files\ と設定していたにもかかわらず
..\..\..\Program Files\ となっているのです。

これはどうしてでしょうか?
なお、いろいろ試しましたがこの現象は、自分自身のPCフォルダを開くときだけで
サーバのフォルダを開く目的でのリンクを張ったりした場合は問題ありません。

たとえば
http://www.yahoo.co.jp/ ←yahooのページ
Z:\server\ ←サーバにあるserverフォルダを開くリンク
C:\server\ ←自分自身のPCのCドライブにあるserverファイルを開くリンク
こんなのを作るとします。

これが気がつくと
http://www.yahoo.co.jp/ ←問題なし
Z:\server\ ←問題なし
..\..\..\server\ ←変化!
必ずこう変化してしまうんです。

変化してしまうタイミングは不明なのですが
その日のうちにExcelを閉じて、開きなおす、PC再起動する、程度では変化しません。
違う日にアクセスしようとすると勝手に変わってるのです。
なお、このファイルは私しか使用していないので
他の人が勝手にいじるということはありません。

また、リンクをfile///のやり方でも同様の現象が起きています。
使用OSはWindowsXPプロフェッショナルです。

どなたか解決方法がわかる方
是非お願いします。
よろしくお願いします。

Excel2000での出来事です。

自身のPCフォルダを素早く開くショートカット目的として
C:\Program Files\ などをハイパーリンクで設定しています。

設定してその日は問題なくクリックすることで目的のフォルダが開くのですが、
別の日に改めてクリックすると「このサイトのアドレスは正しくありません」
とメッセージが出てしまいます。

ハイパーリンクの編集を見てみると
C:\Program Files\ と設定していたにもかかわらず
..\..\..\Program Files\ となっているのです。

これはどうしてでしょう...続きを読む

Aベストアンサー

Excel2000でメニュがーどうなっているか分かりませんが、
絶対パスに指定してある状態で(相対パスになっていたら絶対パスにしてから)

ツール→オプション→全般(タブ)→Webオプション→ファイル(タブ)の中の保存時のリンク更新のチェックを外す…でいかがでしょうか?

Q値が入っている一番右のセル位置を返す方法

たとえばA行に値(文字列)が横に並んでいるとして
値が入っている一番右のセルの位置を返すようにするにはどのようにすればいいでしょう?

Aベストアンサー

セルの位置を返したいのであれば
=CHAR(MATCH(MAX(1:1)+1,1:1,1)+64)&1
でどうでしょうか。

Qバッチファイル 文字列にスペースがある場合

for /f %%A in ('dir /b /s c:\a aa*.pdf') do copy "%%A" D:\

これはcドライブのa aaというフォルダ名の中を検索するコードですが、
フォルダ名にスペースがあるため、うまく動きません。

"a aa"のように""で囲ってみましたが、駄目でした。

どうすれば良いのか、教えていただきたいので、お願いします。

Aベストアンサー

for /f %%A in ('dir /b /s c:\"a aa"\*.pdf') do echo copy "%%A" D:\
のようにecho でどのようなコマンドが実行されているか確認しましょう。

この記述ではdirコマンドで表示されるパスの中に空白があるため %%A には空白までの文字列しか代入されません。
以下のように修正して試してみてください。

for /f "delims=" %%A in ('dir /b /s c:\"a aa"\*.pdf') do copy "%%A" D:\


人気Q&Aランキング