QA@IT
«回答へ戻る

回答を投稿

--------------------------------------------------------------------------------

Jittaさんの書き込み より:

1は、DataGridを上から回しながら、チェックのついた行だけ処理対象とする、ということでいいですよね。

2は、私はEXCELで罫線を引を引く処理をマクロ記録し、それをVB.NET上に移しました。
--------------------------------------------------------------------------------

ご返答、ありがとうございます。
マクロ記録を参照するなんて、考えもしなかったんです。
大変参考になりました。

で、.NETからExcelに書込み処理なんですが、
[Insert]処理ができて、[Update]処理はどうしてもできなかったんです。
多分SQL文のカラムの書き方がおかしいと思いますが、
一応、ソースを載せておきます。
よろしくお願いします。

Dim xsConnectionString As String
xsConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;"
xsConnectionString += "Data Source=" & sDirFileExcelMakingFile & ";"
xsConnectionString += "Extended Properties=Excel 8.0;"
Dim xobjConn As New System.Data.OleDb.OleDbConnection(xsConnectionString)
Dim Sql_Str, SqlCommand

Try
xobjConn.Open()
Catch etype As Exception
'--- エラー処理
Exit Sub
End Try

'--- このインサート文はうまくいきますが。。。
Sql_Str = "INSERT INTO [Sheet$Print_Area] VALUES('.........
SqlCommand = New System.Data.OleDb.OleDbCommand(Sql_Str, xobjConn)
SqlCommand.ExecuteNonQuery()
SqlCommand.Dispose()

'--- 更新はできないんです。カラムの書き方がおかしい?
'Sql_Str = "update [List$Print_Area] set [COLUMN($B$4)] = 'W'"
SqlCommand = New System.Data.OleDb.OleDbCommand(Sql_Str, xobjConn)
SqlCommand.ExecuteNonQuery()
SqlCommand.Dispose()

よろしければ、更新文の正誤をお教え頂ければ幸いです。
よろしくお願いいたします。

投稿者:KAN

\--------------------------------------------------------------------------------

Jittaさんの書き込み より: 

> 1は、DataGridを上から回しながら、チェックのついた行だけ処理対象とする、ということでいいですよね。 

> 2は、私はEXCELで罫線を引を引く処理をマクロ記録し、それをVB.NET上に移しました。 
\--------------------------------------------------------------------------------

ご返答、ありがとうございます。
マクロ記録を参照するなんて、考えもしなかったんです。
大変参考になりました。

で、.NETからExcelに書込み処理なんですが、
[Insert]処理ができて、[Update]処理はどうしてもできなかったんです。
多分SQL文のカラムの書き方がおかしいと思いますが、
一応、ソースを載せておきます。
よろしくお願いします。

Dim xsConnectionString As String
xsConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;"
xsConnectionString += "Data Source=" & sDirFileExcelMakingFile & ";"
xsConnectionString += "Extended Properties=Excel 8.0;"
Dim xobjConn As New System.Data.OleDb.OleDbConnection(xsConnectionString)
Dim Sql_Str, SqlCommand

Try
    xobjConn.Open()
Catch etype As Exception
    '--- エラー処理
    Exit Sub
End Try

'--- このインサート文はうまくいきますが。。。
Sql_Str = "INSERT INTO [Sheet$Print_Area] VALUES('.........
SqlCommand = New System.Data.OleDb.OleDbCommand(Sql_Str, xobjConn)
SqlCommand.ExecuteNonQuery()
SqlCommand.Dispose()

'--- 更新はできないんです。カラムの書き方がおかしい?
'Sql_Str = "update [List$Print_Area] set [COLUMN($B$4)] = 'W'"
SqlCommand = New System.Data.OleDb.OleDbCommand(Sql_Str, xobjConn)
SqlCommand.ExecuteNonQuery()
SqlCommand.Dispose()

よろしければ、更新文の正誤をお教え頂ければ幸いです。
よろしくお願いいたします。


投稿者:KAN