2017-11-17 5 views
0

EPPlus를 사용하여 일부 IP 주소를 Excel에 쓰려고합니다. 실제로 ip 주소가 아닌 것 -> 300.278.100은 서브넷을 나타냅니다.EPPlus로 IP 주소 쓰기

cell.Style.Numberformat.Format = "##0.##0.##0"; 
cell.Value = val; 

cell.Style.Numberformat.Format = "@"; 
cell.Value = val; 

enter image description here

그리고 항상 위의 그림과 비슷한 무언가를 얻을 :이 형식을 시도합니다. 그리고 다른 결과가 나타납니다. 36892는 "1.1.1"이어야합니다. 일부 결과는 텍스트처럼 저장된 숫자와 기타 텍스트입니다. 나는 그들 모두가 경고없이 또는 포맷과 같은 IP를 가진 숫자처럼 텍스트처럼 저장되기를 바랍니다.

어떻게 구현할 수 있습니까?

답변

1

문제는 숫자에 많은 의미가없는 소수점이 하나 이상 있습니다.

//With Leading zeros - prints as "001.001.001" in excel 
//Should work for all subnets 
sheet1.Cells[1, 2].Style.Numberformat.Format = "000\\.000\\.000"; 
sheet1.Cells[1, 2].Value = 1001001; 

확실하지 그런 실수 내부 제로에-사이 쇼를 선택적으로 할 수있는 방법이있다 : 당신은 숫자 같은 것을 할 것입니다 모든 항목을 유지하려는 경우 생각할 수있는 가장 가까운 소개. 각 셀에 대해 다음과 같이 조정할 수 있습니다.

//Without Leading zeros but has to be adjusted for each value 
//print as "1.1.1" in excel 
sheet1.Cells[1, 3].Style.Numberformat.Format = "0\\.0\\.0"; 
sheet1.Cells[1, 3].Value = 111; 

//print as "1.11.1" in excel 
sheet1.Cells[1, 4].Style.Numberformat.Format = "0\\.00\\.0"; 
sheet1.Cells[1, 4].Value = 1111; 

정확하지 않습니다. 그렇지 않으면 서식을 생략하고 문자열로 설정할 수 있습니다.