- ベストアンサー
EXCELとの連携
ブラウザで入力した値を、excelで作った表に反映させて印刷したい。 またそのデータを月ごとにデータ-ベースとして保存し、呼び出したりできるようにする。 こういった事をするには何を勉強すればよいでしょうか? もし質問する場所が違えば教えてください。よろしくお願いします。 (すべてローカルでできればいいです。)
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
(1)ブラウザでの入力値をEXCEL表への反映。 (2)月次処理して、データベース保存を行う。 (1)を実装したいのであれば、HTML,VBSciprt(JavaScript)のスキル習得 が必要です。 (2)を実装したいのであれば、MS-ACCESS,SQL,とEXCEL VBAマクロのスキル習得が必要です。 (1)をついては、HTMLとVBVBScriptnoサンプルコードを下記します。 <HTML> <HEAD> <META HTTP-EQUIV="CONTENT-TYPE" CONTENT="TEXT/HTML;CHARSET=SHIFT_JIS"> <TITLE>ブラウザとExcelの連携サンプル</TITLE> <SCRIPT LANGUAGE="VBS"> '============================================================================== ' Excel起動 '============================================================================== Sub exeExcel() Dim objExcelApp On Error Resume Next Err.Clear Set objExcelApp = CreateObject("excel.application") If Err Then ' エラー処理 document.write "<font color=red>" document.write "Excelを起動できませんでした<br>" document.write "エラー:" & Err.Description & "<br>" document.write "</font><br>" & vbCrLf document.write "<a HREF=ie_option.htm TARGET=_BLANK>セキュリティレベル設定方法</A>" Else On Error goto 0 objExcelApp.Workbooks.Open("c:\test.xls") Set objExcelBook = objExcelApp.ActiveWorkbook Set objExcelSheets = objExcelBook.Worksheets Set objExcelSheet = objExcelBook.Sheets("Sheet1") objExcelSheet.Activate objExcelApp.Application.Visible = True objExcelSheet.Cells(1,1).Value = document.MyForm.TXT_DATA1.value objExcelSheet.Cells(2,1).Value = document.MyForm.TXT_DATA2.value objExcelSheet.Cells(3,1).Value = document.MyForm.TXT_DATA3.value objExcelSheet.Activate End If End Sub </SCRIPT> </HEAD> <BODY> <FORM NAME="MyForm" METHOD="POST"> <INPUT TYPE="TEXT" NAME="TXT_DATA1" SIZE="15" MAXLENGTH="30"><BR> <INPUT TYPE="TEXT" NAME="TXT_DATA2" SIZE="15" MAXLENGTH="30"><BR> <INPUT TYPE="TEXT" NAME="TXT_DATA3" SIZE="15" MAXLENGTH="30"><BR> <INPUT TYPE="BUTTON" STYLE="WIDTH:150px" VALUE="Excelへデータ送信" NAME="BTN_EXCEL" onClick="exeExcel()"><BR> </FORM> </BODY> </HTML>
その他の回答 (1)
- Hardking
- ベストアンサー率45% (73/160)
test.xlsがCドライブ直下に存在し且つ Sheet1というワークシートがありますか? あれば、test.xlsが開いてSheet1の 1行1列、2行1列、3行1列に入力値が反映されるはずです。
お礼
ありがとうございます。できました。
お礼
ありがとうございます。 HTMLと多少のJavaScriptは理解しているのですが、MS-ACCESSとSQLとEXCEL VBAマクロが必要ですか。SQLは名前は良く聞くのですが、勉強したことないです。 今は、EXCELだけを使用し、ひと月、1名分を1シートに入力して、それを印刷したい他の4シートに関数でリンクさせて印刷及びそれを1ファイルで保存しています。これを人数分作っているのですが、人数が増えてきたら難しいと感じているのでなんとかしたいと思い質問させていただきました。 上記のサンプルコードをhtmlの拡張子を付けて保存してIE6で開き、送信を行ったのですが、特に何も動作しないのですがこれだけで動作するものではないのですか? すみません、よろしくおねがいします。