漠然とした質問で恐縮ですが、たまにWEB(ホームページ)上のデータを自動で取得(取りこみ)するソフトをみかけますが、ああいうのはどういう技術によるものなのでしょうか?
色々な方法があるとは思うのですが、私はプログラミングといってもAccessのVBAを少々いじれる程度なので、できればAccessで可能な方法が良いですが、Accessでは出来ないのでしたら、他のソフトや言語でもかまいません。

ヒントだけでも結構ですので、どなたかご教授頂けないでしょうか?
よろしくお願い致します。m(_ _)m

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

A 回答 (2件)

EXCEL2002 でテストしました。

[データ] メニューの [外部データの取り込み] をポイントして [新しい Web クエリ] をクリックして取り込むことができました。Accessは持ってませんができそうです。手順をみればわかりますが取り込む部分ではVBAは必要ないです。取り込めないページとかありますが、参考まで。

参考URL:http://www.1147mono.com/Excel/katsuyou_07.htm
    • good
    • 0
この回答へのお礼

ありがとうございます。早速試してみたところ、こちらでも成功しました。
これは非常に便利ですね。VBAと組み合わせれば色々なことができそうです。
しかし、Accessには同様の機能がないようでした。
同じように簡単にWEBページを取り込めるといいのですが・・・。
構造上Excelのスプレッドシートのようにはいかないでしょうが、何かこう上手い方法はないのかと思っています。

お礼日時:2002/02/23 20:15

Web上のデータというのが漠然としすぎてて、何を示しているのかが


いまいち把握しがたいのですが...

Web上に書かれている文字などを自分のパソコンに取り込むということなら、
Webブラウザと同じように、TCP/IPのソケットのプログラムを組む必要が
あるでしょう。

この回答への補足

早速のご回答ありがとうございます。
WEB上のデータというのは、例えば、ヤフーオークションの出品データとか、価格ドットコムの価格情報とかです。こういうのを拾うのはやはりAccess単体では無理でしょうか?

補足日時:2002/02/23 02:35
    • good
    • 0

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

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

QACCESS 2003の条件分岐について教えて頂けないでしょうか?

access2003を勉強中です。

先週1週間かけても解決できないことがありまして、どなたか教えて頂けないでしょうか。

内容は

会社で使用する勤務表に関してです。

ユーザー名(コンボボックス)、日付(カレンダーコントロール)、
出社時間(テキストボックス)、退社時間(テキストボックス
、作業内容(テキストボックス)をユーザーが入力し「登録」
コマンドボタンのイベントで入力した内容を、勤務表テーブルに
反映させたいのです。

その時に同じユーザーの同じ日付を2件入力させないようにしたいので

フォームに入力された内容からユーザー名と日付によって、
同じ内容が勤務表テーブルに無ければinsert、有ればupdateと
条件分岐をしたいのです。

しかし、

Public Sub kinmu()

Dim mmrs As ADODB.Recordset
Dim mmcn As ADODB.Connection

Set mmrs = New ADODB.Recordset
Set mmcn = Application.CurrentProject.Connection

mmrs.Open "勤務表", mmcn, adOpenKeyset, adLockOptimistic

mmrs.MoveFirst

If DCount("[ユーザー名] & [日]", "[勤務表]", "[ユーザー名]=[Forms]![フォーム1]![コンボ56]" & _
"and[日]=[Forms]![フォーム1]![テキスト88]") = 0 Then
mmcn.Execute "INSERT INTO 勤務表 ([ユーザー名],[日],[出社],[退社],[作業内容]) VALUES ([Forms]![フォーム1]![コンボ56],[Forms]![フォーム1]![テキスト88],[Forms]![フォーム1]![テキスト8],[Forms]![フォーム1]![テキスト17],[Forms]![フォーム1]![テキスト28]);"
Else
mmcn.Execute "UPDATE 勤務表 SET (ユーザー名=[Forms]![フォーム1]![コンボ56],日=[Forms]![フォーム1]![テキスト88],出社=[Forms]![フォーム1]![テキスト8],退社=[Forms]![フォーム1]![テキスト17],作業内容=[Forms]![フォーム1]![テキスト28] where [ユーザー名]=[Forms]![フォーム1]![コンボ56] and [日]=[Forms]![フォーム1]![テキスト88]);"
End If

として、「登録」コマンドボタンのイベントとしてCallキーワードによって呼び出そうとしているのですが、うまくいきません。

最初はDCount関数で件数を求め、それを変数に入れる。
IIF関数による分岐。などいろいろ試してはいたのですが、、、。

どなたか教えて下さい。よろしくお願いします。

access2003を勉強中です。

先週1週間かけても解決できないことがありまして、どなたか教えて頂けないでしょうか。

内容は

会社で使用する勤務表に関してです。

ユーザー名(コンボボックス)、日付(カレンダーコントロール)、
出社時間(テキストボックス)、退社時間(テキストボックス
、作業内容(テキストボックス)をユーザーが入力し「登録」
コマンドボタンのイベントで入力した内容を、勤務表テーブルに
反映させたいのです。

その時に同じユーザーの同じ日付を2件入力させないよう...続きを読む

Aベストアンサー

1)レコードセットは何のために開いているのですか?
2)分岐うんぬんの前に、

mmcn.Execute "INSERT INTO 勤務表 ([ユーザー名],[日],[出社],[退社],[作業内容]) VALUES ([Forms]![フォーム1]![コンボ56],[Forms]![フォーム1]![テキスト88],[Forms]![フォーム1]![テキスト8],[Forms]![フォーム1]![テキスト17],[Forms]![フォーム1]![テキスト28]);"

これは正しく動作していますか?

Qあああ..ああい..ああう という連番を作成するこ

三文字で連番を作成することはできますか?
あああ..ああい..ああう..
あいあ..あいん いああ  いんん..  ..
..と、 んんん までの連番を作成することはできますか?

暇な時に子供の名前を考える際あ~んまでの全通りを機械的に吟味しているのですが
音声ソフトウェアにとりこんで自動的に読み上げてもらい語感を確かめたい と思っているのですが
このひらがな三文字の連番作成をすることはできますか? 
よろしくお願いいたします

Aベストアンサー

http://www.unicode.org/charts/PDF/U3040.pdf
UNICODEの表からひらがな(83文字)を拾ってきて、83*83*83=57万1787種を生成するだけなら、こんなのとか。rubyで書いてます。

hiragana = %w[
ぁ あ ぃ い ぅ う ぇ え ぉ お か が き ぎ く ぐ け
げ こ ご さ ざ し じ す ず せ ぜ そ ぞ た だ ち
ぢ っ つ づ て で と ど な に ぬ ね の は ば ぱ
ひ び ぴ ふ ぶ ぷ へ べ ぺ ほ ぼ ぽ ま み む め
も ゃ や ゅ ゆ ょ よ ら り る れ ろ ゎ わ ゐ ゑ
を ん];
l = hiragana.length; n = l ** 3;
for h in (0... n)
a0 = h % l; x = ( h - a0 ) / l;
a1 = x % l;
a2 = ( x - a1 ) / l;
if h < 5 || h % 100000 == 0 || n - h < 5 then
printf "%06d: %s%s%s\n", h, hiragana[ a0 ], hiragana[ a1 ], hiragana[ a2 ];
end
end

結果はこんな感じ(最初と終わりの数行と10万ごとのパターンを出力):

000000: ぁぁぁ
000001: あぁぁ
000002: ぃぁぁ
000003: いぁぁ
000004: ぅぁぁ
100000: ゅにく
200000: ぶぃぞ
300000: でのぬ
400000: じうほ
500000: ぉぱら
571783: ゐんん
571784: ゑんん
571785: をんん
571786: んんん

http://www.unicode.org/charts/PDF/U3040.pdf
UNICODEの表からひらがな(83文字)を拾ってきて、83*83*83=57万1787種を生成するだけなら、こんなのとか。rubyで書いてます。

hiragana = %w[
ぁ あ ぃ い ぅ う ぇ え ぉ お か が き ぎ く ぐ け
げ こ ご さ ざ し じ す ず せ ぜ そ ぞ た だ ち
ぢ っ つ づ て で と ど な に ぬ ね の は ば ぱ
ひ び ぴ ふ ぶ ぷ へ べ ぺ ほ ぼ ぽ ま み む め
も ゃ や ゅ ゆ ょ よ ら り る れ ろ ゎ わ ゐ ゑ
を ん];
l = hiragana.length; n = l ** 3;
for h in ...続きを読む

Q簡単な数式で恐縮ですが・・

こんばんは、下記式でご相談ですが

( 5.83K x 80 ) + ( 0.04K x 5 ) + ( 1.28K x 15 )
= 195.65 + 0.19 + 30.57 = 485.67Kbps

「5.83K」、「0.04K」などはどう変換して扱えば
良いでしょうか?。
ちょっと式が理解できず・・

アドバイスお願いします。

Aベストアンサー

> 195.65 + 0.19 + 30.57 = 485.67Kbps
この部分は、226.41=485.67Kbpsの方程式を解けばいいんじゃないでしょうか?

> ( 5.83K x 80 ) + ( 0.04K x 5 ) + ( 1.28K x 15 )
> = 195.65 + 0.19 + 30.57
推測するに
5.83K x 80 = 195.65
0.04K x 5 = 0.19
1.28K x 15 = 30.57
と思いますが、
分野を書いてもらわないと推測でしか答えられないです。(推測でもダメですが)
暗黙の了解として、1000倍したり、8倍とか9.8倍とかすることがあります
Kbpsはコンピューターの通信でも使われますが計算結果が合いません。

この自動車は26734mを時速50kmで走ると何秒かかるか。
という感じ。
問題に明記されていなくても距離の場合は1000倍、時間は60倍することがあります
コンピューターの通信速度の話なら一般的に使われるファイルサイズ(単位バイト)と通信速度(単位ビット・秒)を統一させないとダメですよ

> 195.65 + 0.19 + 30.57 = 485.67Kbps
この部分は、226.41=485.67Kbpsの方程式を解けばいいんじゃないでしょうか?

> ( 5.83K x 80 ) + ( 0.04K x 5 ) + ( 1.28K x 15 )
> = 195.65 + 0.19 + 30.57
推測するに
5.83K x 80 = 195.65
0.04K x 5 = 0.19
1.28K x 15 = 30.57
と思いますが、
分野を書いてもらわないと推測でしか答えられないです。(推測でもダメですが)
暗黙の了解として、1000倍したり、8倍とか9.8倍とかすることがあります
Kbpsはコンピューターの通信でも使われますが計算結果が...続きを読む

Q非常に初歩的な質問で恐縮なのですが、

非常に初歩的な質問で恐縮なのですが、
C#で、配列リストを機械的に複数個作ることはできないでしょうか。
具体的には、myArrayListという配列リストを100個作るとして、

System.Collections.ArrayList myArrayList1 = new System.Collections.ArrayList();
System.Collections.ArrayList myArrayList2 = new System.Collections.ArrayList();
System.Collections.ArrayList myArrayList3 = new System.Collections.ArrayList();
System.Collections.ArrayList myArrayList4 = new System.Collections.ArrayList();
System.Collections.ArrayList myArrayList5 = new System.Collections.ArrayList();
・・・
System.Collections.ArrayList myArrayList100 = new System.Collections.ArrayList();

をループなどを使うことによって書きたいのですが。

詳しい方がいらっしゃいましたら、アドバイス願います。

非常に初歩的な質問で恐縮なのですが、
C#で、配列リストを機械的に複数個作ることはできないでしょうか。
具体的には、myArrayListという配列リストを100個作るとして、

System.Collections.ArrayList myArrayList1 = new System.Collections.ArrayList();
System.Collections.ArrayList myArrayList2 = new System.Collections.ArrayList();
System.Collections.ArrayList myArrayList3 = new System.Collections.ArrayList();
System.Collections.ArrayList myArrayList4 = new System.Collections.ArrayLi...続きを読む

Aベストアンサー

C#は知りませんが(^^;
配列リストの配列では拙いんでしょうか?

Qこの9月にITエンジニアとしてスタートしたばかりの、初心者で恐縮なので

この9月にITエンジニアとしてスタートしたばかりの、初心者で恐縮なのですが、
linux 5の環境下で下記のような事をしようとしています。

■test.csvの内容を読み込んで結果を出力し、その出力結果を使う。

test.csvの内容
001.txt,100,200
002.txt,300,400

このtest.csvから各行の1フィールド目を順に読み込んで
cp -p 001.txt 001_200.txt
cp -p 002.txt 002_300.txt
という感じで新しくファイルをコピーして作成しようと考えています。

awkで順に出力してコピーしようとしたのですが、
組込変数のNRがawk内で外部変数(?すみません、ここがよく理解できていません)を使えないように
思えて前に進めない状態です。

NR==i (NR==${i}と記述するのはNG??)として
for i `seq 1 N`
do
a=`awk BEGIN{FS=","}(NR==i){print $2}`
done
のように書きたいのですが、これはawkの文法から不可能なのでしょうか?

大変申し訳ございませんが、追記・追加情報必要であれば補足します。
雲をつかむようですみません。全部のコード(?)を載せるのは仕事上まずいかなと思いまして
こんな書き方になってしまいました。

この9月にITエンジニアとしてスタートしたばかりの、初心者で恐縮なのですが、
linux 5の環境下で下記のような事をしようとしています。

■test.csvの内容を読み込んで結果を出力し、その出力結果を使う。

test.csvの内容
001.txt,100,200
002.txt,300,400

このtest.csvから各行の1フィールド目を順に読み込んで
cp -p 001.txt 001_200.txt
cp -p 002.txt 002_300.txt
という感じで新しくファイルをコピーして作成しようと考えています。

awkで順に出力してコピーしようとしたのですが、
組込変数のNRがawk内で...続きを読む

Aベストアンサー

つい先日も書いたんだけど
http://oshiete.goo.ne.jp/qa/6150647.html

awkとシェルとはまったく別と言ってよい処理系なので、シェルの変数の内容をawkに渡すには
・シェルの置換機能を使って、awkスクリプト文字列に埋め込む
・awk の -v オプションでawkの変数に代入する
という方法を使います。


ただね.....
多分、他の言語(CとかBasicとか)の考え方なのかもしれませんが、NR==で行番号指定して処理するのって、(数行だけならともかく)全行にわたって行うのはすごい無駄です。
特に、この例では行番号は関係ないですから。
先のURLにあるような方法で1行ずつ行う方が効率はいいです。

さらに言えば、処理がそのコピーだけなら、シェル変数に代入する必要すらなく、1行でできます
awk 'BEGIN{FS=","} {prinf "cp %s %s_%s.txt" $1,$2,$3}' < test.csv | sh
shを使わず、awkのsystem関数を使う方法もあります
awk 'BEGIN{FS=","} {system( sprinf("cp %s %s_%s.txt" $1,$2,$3))}' < test.csv
あるいは、awkを使わずsedで
sed 's/^\([^,]*\),\([^,]*\),\([^,]*\).*/cp \1 \2_\3.txt/' test.csv | sh
先頭の指定行だけ処理したいのなら、headコマンドで
head -10 test.csv | sed 's/^\([^,]*\),\([^,]*\),\([^,]*\).*/cp \1 \2_\3.txt/' test.csv | sh
(この例は10行)
等々

パイプを使った処理はUnix系OSの肝とも言えるものです。
また、awkは実に便利なプログラム言語です。
解説書や解説サイトも沢山あるので、勉強してみてください。

つい先日も書いたんだけど
http://oshiete.goo.ne.jp/qa/6150647.html

awkとシェルとはまったく別と言ってよい処理系なので、シェルの変数の内容をawkに渡すには
・シェルの置換機能を使って、awkスクリプト文字列に埋め込む
・awk の -v オプションでawkの変数に代入する
という方法を使います。


ただね.....
多分、他の言語(CとかBasicとか)の考え方なのかもしれませんが、NR==で行番号指定して処理するのって、(数行だけならともかく)全行にわたって行うのはすごい無駄です。
特に、この例では行番号は関係...続きを読む


人気Q&Aランキング

おすすめ情報