2009-04-14 9 views
1

「外部データのインポート」機能で動作するカスタムデータソースを実装する方法はありますか?Excel外部データソースの実装

たとえば、Excelで理解できないファイル形式のデータがあるとします。私は "外部データ"機能を介してこの形式を理解できるようにExcelのアドイン(または何でも)を実装したいと思います。明らかに、私はExcelを既に理解しているものに変換することができますが、ユーザーの利便性のために、この追加のステップは必要ありません。

答えて

4

私は、タブ区切りのデータを提供するlocalhost上でHTTPサーバーを実行するサービスを作成しました。私のニーズを完璧に発達させるのは簡単ではありませんでした。外部データ機能と統合され、ODBCドライバを開発する必要はありません。

+0

私たちも同じ状況に直面しています。これを実際に見られるサンプルがありますか?私は特に興味があります1)http応答で使用される戻り値の型は何ですか?それは簡単なタブで区切られた文字列ですか? 2)あなたはこのサービスに接続するためにどのデータソースを使用しましたか? 3)ExcelデータタブでRefreshAllボタンを使用してユーザーがデータをリフレッシュするときにこれがうまく機能するかどうか –

+1

サンプルがありませんが、私はあなたの質問に答えることができます。 1)HTTPレスポンスは、単純なタブ区切りの文字列(行を終了するには\ r \ n)を持つcontent-type text/plainです。最初の行には列見出しが含まれます。タブ区切り形式でエクスポートしたのとまったく同じテキスト形式です。 2)Excelの[データ]タブで[Webから]をクリックし、URLを入力します。私の場合は、http:// localhost:9000を指しています。これはWebサーバーを実行している場所です。 3)Refresh Allボタンは、この手法で効果的です。 –

+0

ありがとうございます@ dave76 ...私たちの実際のシナリオは、以前に直接接続で実行されたSSASキューブからExcelにデータをフェッチすることです。 Excelの接続文字列に起因するセキュリティ上の懸念があるため、SSASを独自のWebサービスとして公開することを考えました。しかし、後で、SSASに内蔵のデータポンプ機能があることがわかりました。私たちはそれを使用することに決めました。 –

2

ここでアドイン(または何でも)は、ODBCドライバ(またはOLEDBドライバ)です。私はあなたが1つを書いたくないと思う。

外部データのインポートを使用する場合はもちろんですが、独自のファイルを解析して読み込むアドインを作成することもできます。それはそれ自身のメニュー項目を持ち、外部データのインポートとは関連しません。

+0

合意+1。これが私のやり方です。ファイルを自分でロードしてから、シートをオートメーション化します。 – RedBlueThing

0

XLLoopを試すことができます。これにより、外部サーバーにExcel機能(UDF)を実装することができます。

スプレッドシートにLoadWidgetData(widgettype、date)という名前の関数が含まれていると、サーバーを呼び出すことができます。

多くの言語(Java、Ruby、Python、PHP)でのサーバー実装があります。

私はプロジェクトに取り組んでいますので、ご不明な点がありましたらお知らせください。