2011-08-08 1 views
1

긴 이야기의 짧은에 셀 값을 비교 :textbox.text 값 C#을 나는 C#으로 행을 엑셀 iterationh에 대한 비교를 작성한

if(ws.Cells[i, "C"].ToString() == TextBox12.Text) 

닷컴 HRESULT 예외를 던지는 것을 끈다. 이 비교를 수행하는 올바른 방법은 무엇입니까? 나는 인터넷에서 광범위한 검색을 해왔지만 나에게 어울리는 것은 아무것도 없었다. 도움 필요!

+0

귀하의 예외에는 어떤 HRESULT 값이 있습니까? –

+0

정확히 : HRESULT 예외 : 0x800A03EC – neocorp

답변

0

ws.Cells[i,"C"] 개체의 .ToString() 메서드를 사용하면 System._ComObject이 반환됩니다. 너는 ws.Cells[i,"C"].Value.ToString()을 원한다. 나는 그것을 시험해 보았고 두 사람이 평등하다는 것을 알았다.

+0

잘,'ws.Cells [i, "C"]. Value.ToString()'셀 사양을 입력 한 후에 .Value 메서드를 볼 수 없어 작동하지 않습니다. 나는 다음과 같은 다른 방법을 시도했다 :'if (currentFind == ws.Cells.Value2)'(currentfind는 Excel.Range btw 임). 그러나 이번에는 throws :이 작업을 완료하기에 충분한 저장 공간이 없다. (HRESULT 예외 : 0x8007000E (E_OUTOFMEMORY)) – neocorp

+0

@ Niyazi Value 메서드를 볼 수 없다는 것은 무엇을 의미합니까? '셀 (Cells)'은 동적이기 때문에 IDE에서 Intellisense를 얻지는 못하지만, 분명히 거기에 있습니다. 귀하의 의견에 if 문이 실제로 작동하는지 여부는 알 수 없습니다. – jonsca

+0

고마워, 나는 사실이 비교 스타일에 만족하지 않아. 다른 방법으로 보여 주시겠습니까? 나는 기본적으로이 일을하고있다 : 100 개의 행을 가진 파일을 Excel 파일로 가져 와서 textbox.text를 가져온 다음 끝에 루프를 검색하여 C 열의 값과 일치하는지 확인한다. – neocorp