- ベストアンサー
VB.NETでエクセル操作
度々失礼します。 VBよりエクセルを開けて A列の数字の合計とB列の数字の合計との差を Label1に表示するようなソースで悩んでます。 教えて下さい。よろしくお願い致します。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
Dim excel As Object excel = GetObject("D:\sample\test.xls") dim sumA as integer = excel.Application.WorksheetFunction.Sum(excel.Sheets("Sheet1").Range("A:A")) dim sumB as integer = excel.Application.WorksheetFunction.Sum(excel.Sheets("Sheet1").Range("B:B")) みたいな感じで、A列とB列の合計が求められます
その他の回答 (1)
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
回答No.2
>Subtotalは使用できませんよね? 使えますよ
質問者
お礼
BLUEPIXY 様 解決しました。ありがとうございました。
お礼
BLUEPIXY 様 早速のご回答でありがとうございます。 返事が遅くなりまして、申し訳ございませんでした。 質問させて頂きました悩みは解決しました。 ちなみにエクセルを開いた後、オートフィルタの検索値を合計するにはどうすればよいのでしょうか? Subtotalは使用できませんよね? よろしくお願い致します。
補足
今現在のソースです。 Dim app As Object Dim book As Object Dim sheet As Object Dim Selection As Object app = CreateObject("Excel.Application") app.application.visible = True book = app.Workbooks.Open("C:\xxx.xls") sheet = book.Worksheets(1) With sheet.Range("A1") If .AutoFilter Then .AutoFilter(field:=1, Criteria1:=TextBox1.Text) End With Dim sumA As Integer = app.WorksheetFunction.sum(sheet.Range("C:C")) Dim sumB As Integer = app.WorksheetFunction.sum(sheet.Range("D:D")) Label1.Text = sumA + sumB