검색 내가 가진 델파이 7. 나는 내가 adotable 및 데이터 소스를 사용하여 Excel로 연결 한하는 DBGrid를DBGrid를
내부 데이터를 검색 할
.
나는 인터넷을 검색 만 새로운 엑셀 문서를 작성하는 방법 또는 엑셀 문서
을 연결하는 방법을 발견하지만 Excel이되면 나는 모든 행
검색 내가 가진 델파이 7. 나는 내가 adotable 및 데이터 소스를 사용하여 Excel로 연결 한하는 DBGrid를DBGrid를
내부 데이터를 검색 할
.
나는 인터넷을 검색 만 새로운 엑셀 문서를 작성하는 방법 또는 엑셀 문서
을 연결하는 방법을 발견하지만 Excel이되면 나는 모든 행
을 통해 첫 번째 열을 검색 할 한 ADOTable에로드되면 다른 일반 테이블과 같습니다.
격자에서 검색하지 마십시오. 대신 AdoTable의 Locate
메소드를 사용하십시오.
//or using [loCaseInsensitive,loPartialKey] options
ADOTable1.Locate('FieldName', 'Value', []);
당신은 원래의 위치로 돌아갑니다 당신이 필요로하는 값을 찾을 때 그래픽으로 상쾌한 격자 및 책갈피를 피하기 위해 DisableControls
및 EnableControls
을 사용할 수 있습니다.
HTH
예, 위치 찾기가 더 좋습니다. DBGrid가 ClientDataSet 또는 Query에 연결되어 있으면 DataSource에서 Locate를 사용하십시오.
MyClientDataSet.Locate (... 자세한 내용은 귀하의 델파이 코드, 찾아 F1 당신은 델파이 내부에 도움을 열고 단어를 선택합니다.
while not adoquery1.Eof do
begin
for I := 0 to adoquery1.FieldCount-1 do
if (enhdbgrid1.Fields[i].value<>null) and (pos(uppercase(edit1.Text),uppercase(enhdbgrid1.Fields[i].Value))>0) then
begin
Found := True;
enhDBGrid1.SelectedField := enhdbgrid1.Fields[i];
Break;
end;
if found then break;
adoquery1.Next;
end;
아주 많이 조언은 매우 helpfull했다 주셔서 감사합니다 – user2482023
@ user2482023, 다른 사람들이 귀하의 질문이 해결되었다는 것을 알 수 있도록 답변을 수락하는 데 도움이 되었다면 같은 해결책을 사용할 수 있습니다. [this] (http://meta.stackexchange.com/questions/5234/how-does)를 확인하십시오. 답변 - 수락 - 답변)을 참조하십시오. –