쿼리해온 필드중에 여러사람의 주민번호[ MT_JNO ] 필드가 있는데
그넘의 필드 카운트수를 합하여 디비그리드에 넣고 합한 수 를 다시Excel로 전송하려 하는데 어렵습니다.
즉 주민번호가 같은 레코드의 값을 구하는 것입니다.
고수님 꼭 부탁드립니다.
===================쿼리내용==================
procedure TForm1.Button3Click(Sender: TObject);
begin
with query3 do begin
close;
sql.Clear;
sql.Add (' SELECT A.MM_DATE, MT_JNO B, A.MM_CODE ');
sql.Add (' FROM MS_CODE A, MT_MAIN B ');
sql.Add (' WHERE A.MM_CODE = B.MT_JNO ');
SQL.Add (' AND A.MM_DATE >= :DT1 ');
SQL.Add (' AND A.MM_DATE <= :DT2 ');
Parambyname('DT1') .AsString := Edit1.Text;
Parambyname('DT2') .AsString := Edit2.Text;
open;
end;
Label11.Caption:= IntTostr(DBGrid3.DataSource.DataSet.RecordCount);
end;
===============엑셀전송=====================
procedure TForm1.Button4Click(Sender: TObject);
const xlwbatworksheet = -4167;
var i,j:integer;
Sheet:variant;
begin
XLApp:=Createoleobject('Excel.Application');
XlApp.Visible:=true;
XLApp.workbooks.add(xlwbatworkSheet);
XLApp.workbooks[1].worksheets[1].name:='Sheet';
Sheet:=XLapp.workbooks[1].worksheets['Sheet'];
For i:=0 to Query3.RecordCount-1 do begin
For j:=0 to Query3.FieldCount-1 do begin
Sheet.cells[i+1,j+1]:=Query3.Fields[j].AsString;
end;
Query3.Next;
end;
end;