C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[6]: インポートボタンについて


(過去ログ 89 を表示中)

[トピック内 10 記事 (1 - 10 表示)]  << 0 >>

■52720 / inTopicNo.1)  インポートボタンについて
  
□投稿者/ しぃーちゃん (1回)-(2010/08/23(Mon) 13:34:33)

分類:[ASP.NET (C#)] 

2010/08/23(Mon) 13:35:25 編集(投稿者)

ご教授お願いします。
課題でインポートボタンの処理について解らなく、
今回ご質問させていただきました。
ButtonInport_Click(Excelファイルのデータを取得)について、
画面上どこにもインポートボタンがなく、プログラムからExcel上にインポートボタンをつくり、
データの取得をしているのかなと漠然とした考えしかなく、どのように理解してよいのだろうか?
どなたかアドバイスいただけませんでしょうか?
例えば、こんな感じのプログラムです。
private void ButtonInport_Click(object sender, EventArgs e)
{
try
{
//実行確認
DialogResult dr = MessageBox.Show("大学の情報を取得します.よろしいですか?",
"インポート確認", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);
if (dr.Equals(DialogResult.OK))
{
string[] args = "0,0".Split(',');
DataTable table = new DataTable();
//Exelファイルを指定
string MasterPath = libCom.getMasterPath();
if (libCom.FileLoadDialog(ref args, MasterPath, "Excelファイル (*.xls)|*.xls"))
{
//Excelファイルのデータを取得
libXls.ExcelInport(args[0], ref table);

//グリッド行を初期化
GridData.Rows.Clear();

//データをグリッドに表示
string[] val = new string[table.Columns.Count];

for (int r = 0; r < table.Rows.Count - 1; r++)
{
for (int c = 0; c < table.Columns.Count; c++)
{
val[c] = table.Rows[r].ItemArray.GetValue(c).ToString();
}
SetGrid(table.Rows[r]);
}
}

////Excelファイルのデータを取得
//libXls.ExcelInport(args[0], ref table);
ButtonSearch_Click(sender, e);
}
}
catch (System.Exception ex)
{
DialogResult dr = MessageBox.Show(ex.Message,
"エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
//Debug.Assert(false, ex.Message);
}
finally
{
System.GC.Collect();
}
}

引用返信 編集キー/
■52722 / inTopicNo.2)  Re[1]: インポートボタンについて
□投稿者/ ごう (157回)-(2010/08/23(Mon) 14:16:39)
No52720 (しぃーちゃん さん) に返信
> 2010/08/23(Mon) 13:35:25 編集(投稿者)

どんなデータを使ってどんなことがしたい(課題で要求されていること)のかが分からないので、補足お願いします。

・「インポートボタン」を作れという指示だったのでしょうか?
 インポートボタンというコントロールは標準ではないですが・・・

・インポート元のExcelファイルは各ユーザのPCに保存されているものを使用する? それともサーバにあるもの?

元のExcelファイルの書式(ファイル名やデータが入力されているセルに規則性があるかどうか)で
「どんなプログラムを作ればよいか」の判断が変わってくるし、
もう少し詳しく(Excelの内容等は適宜伏字やABCとかで表現してもらえばいいです)やりたいことと、分からない点を書いてもらえれば詳しい回答が得られるのではないかと思います。



ひとまず、参考になりそうなものを紹介しておきます。

http://www.atmarkit.co.jp/fdotnet/dotnettips/321uploadform/uploadform.html

http://support.microsoft.com/kb/306572/ja

http://taschenkalender.seesaa.net/article/104618598.html


引用返信 編集キー/
■52729 / inTopicNo.3)  Re[2]: インポートボタンについて
□投稿者/ マサヤ (106回)-(2010/08/23(Mon) 16:08:20)
2010/08/24(Tue) 00:58:59 編集(投稿者)

[インポートボタン押下]
1.インポートExcelファイルPath選択ダイアログ表示(拡張子はxlsのみ)
1.1.選択後、確認ダイアログ表示
1.1.1.「OK」選択時 2.へ 
1.1.2.「NO」選択時 糸冬
2.データ格納用DataTableの定義
3.Excel読み込み
3.1.Excelのデータチェック
3.2.Excelで抽出したデータをDataTableに格納
4.DataTableに格納したデータをDataGridに表示

エラー処理とかは、はしょりますが詳細設計はこんな感じではないのですか?
この中のなにができていて何ができないのかを明示してください。

まさか、初めに書かれているコードは課題のテンプレートとして書かれていて
残りを課題通りに動かすために修正する、という趣旨の課題ではないですよね?


引用返信 編集キー/
■52735 / inTopicNo.4)  Re[2]: インポートボタンについて
□投稿者/ しぃーちゃん (2回)-(2010/08/23(Mon) 19:32:38)
No52722 (ごう さん) に返信


ごうさん、返信が遅くなってしまいすいません。
まず、どんなデータを使ってどんなことがしたい?のかですが、
画面の取得情報をExcelに取り込んでDataGridViewにExcelの取り込んだデータを反映させたいことです。

次に、「インポートボタン」を作れという指示だったのでしょうか?の件ですが、
具体的な指示はなくサンプルとして先ほどのソースをいただきました。

次に、・インポート元のExcelファイルは各ユーザのPCに保存されているものを使用する? それともサーバにあるもの?
の件ですが、サーバにあるものです。

Excelファイルの書式(ファイル名やデータが入力されているセルに規則性がない)もので、
おこないます。

サンプルのほう参考にさせていただきます。
詳細なアドバイスありがとうございました。
引用返信 編集キー/
■52737 / inTopicNo.5)  Re[3]: インポートボタンについて
□投稿者/ しぃーちゃん (3回)-(2010/08/23(Mon) 19:43:48)
No52729 (マサヤ さん) に返信

マサヤさん、返信が遅れてすいません。
課題は、画面の取得情報をExcelに取り込んでDataGridViewにExcelの取り込んだデータを反映させたいことです。

質問がまずかったのか、マサヤさんのアドバイスの以前の段階でして、
そもそもインポートボタンてVisual Studio C#には無く、
どこで使うもの?といった次元でしてうまく伝わらなくてごめんなさい。

マサヤさんの以下のアドバイスから、Excelファイル操作にアクセスするボタンと思いますが、
答えは違いますか?
> [インポートボタン押下]
> 1.インポートExcelファイルPath選択ダイアログ表示(拡張子はxlsのみ)
> 1.1.選択後、確認ダイアログ表示
> 1.1.1.「OK」選択時 1.1.2.へ 
> 1.1.2.「NO」選択時 糸冬
> 2.データ格納用DataTableの定義
> 3.Excel読み込み
> 3.1.Excelのデータチェック
> 3.2.Excelで抽出したデータをDataTableに格納
> 4.DataTableに格納したデータをDataGridに表示

よろしくお願いします。
引用返信 編集キー/
■52738 / inTopicNo.6)  Re[4]: インポートボタンについて
□投稿者/ 魔界の仮面弁士 (1764回)-(2010/08/23(Mon) 20:17:19)
No52737 (しぃーちゃん さん) に返信
> 課題は、画面の取得情報をExcelに取り込んでDataGridViewにExcelの取り込んだデータを反映させたいことです。

その前にひとつ確認。最初の質問にて、
>> 分類:[ASP.NET (C#)] 
とありましたが、本当に Web アプリケーションを作成されているのでしょうか?
通常、ASP.NET で DataGridView や MessageBox は使えないはずなのですけれども。

# 一応、<object classid="〜"> タグ経由で使うという手法はありますが…。


>>> ButtonInport_Click(Excelファイルのデータを取得)について、
インポートのスペルは、
Inport ではなく
Import ですよ。
引用返信 編集キー/
■52742 / inTopicNo.7)  Re[3]: インポートボタンについて
□投稿者/ しぃーちゃん (4回)-(2010/08/23(Mon) 21:05:41)
初心者なもので、勘違いをしていました。
.NETの環境だったので…

引用返信 編集キー/
■52748 / inTopicNo.8)  Re[4]: インポートボタンについて
□投稿者/ マサヤ (107回)-(2010/08/24(Tue) 01:48:43)
インポートファイル選択はごうさんの
http://www.atmarkit.co.jp/fdotnet/dotnettips/321uploadform/uploadform.html
をご覧になってください。

Excelのインポートにつきましては
参照の追加にてCOMからMicrosoft Excel version_number Object Libraryを選択して
Excelオブジェクトを使用できるようにする。
まず、この意味を理解してください。

改めて質問します。一番初めに書いてあるコードはご自分で書いたものでしょうか?

引用返信 編集キー/
■52751 / inTopicNo.9)  Re[5]: インポートボタンについて
□投稿者/ しぃーちゃん (5回)-(2010/08/24(Tue) 08:50:05)
No52748 (マサヤ さん) に返信
マサヤさん、いつも優しいアドバイスありがとうございます!
ようやくマサヤさん、ごうさんのお陰で理解出来ましたマ
Excelオブジェクトを使用して、試して実感が出来て解決出来ました。

コードは、私のようなレベルでは到底書けないので、まずは予習として動きとサンプルコードを先生からいただきました。

こんなレベルですが、将来はマサヤさん、ごうさんのような方々みたいになれればと思ってはいますけど、システムエンジニアって、やっぱり素質がないと難しい職業なんですね。

貴重なアドバイスをいただきましてありがとうございました!
解決済み
引用返信 編集キー/
■52819 / inTopicNo.10)  Re[6]: インポートボタンについて
□投稿者/ ごう (164回)-(2010/08/24(Tue) 20:47:47)
2010/08/24(Tue) 20:48:02 編集(投稿者)

No52751 (しぃーちゃん さん) に返信
> こんなレベルですが、将来はマサヤさん、ごうさんのような方々みたいになれればと思ってはいますけど、システムエンジニアって、やっぱり素質がないと難しい職業なんですね。

遅くなってすみません。
プログラムを考え、組むという作業を覚えることは、最初のとっかかりが難しいだけで、後は練習を積めば積むほど上達しますよ。
スキーやスケート、ゴルフみたいなものです。
あえて言うなら、わからないことを具体化して表現できる人は、上達が早い傾向にあると思います。
課題頑張ってください。
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -