편집 : 내가 원하는 기능에 대한 실제 해결책은 here입니다. 필자는 컴파일 된 일부 기능을 폭로하기를 원했습니다. 이것은 Excel DNA Nuget 패키지를 사용하여 매우 쉽다는 것이 입증되었습니다. 클래스 라이브러리를 추가하고 nuget 패키지를 추가 한 다음 readme에있는 코드를 복사하여 붙여 넣기 만하면됩니다. F5를 클릭하면 이미로드 된 추가 기능으로 Excel이 실행됩니다. 기능을 유지하려면 "개발자"리본 섹션을 통해 엑셀 파일에 추가 기능을 수동으로 추가하기 만하면됩니다.Excel 자동화 기능 추가 기능이 작동하지 않습니다.
Original Post : 자동화 추가 기능을 만드는 방법은 this microsoft post의 지침을 따르고 있습니다. 코드가 잘 컴파일되고 Excel 내에서 함수에 액세스 할 수 있습니다. 그러나 기능이 작동하지 않습니다. 함수 호출 결과를 셀에 할당하려고하면 거의 항상 #value 또는 #ref 오류가 발생합니다. 더 구체적으로 :
Microsoft에서 제공하는 다음 기능은 작동하지 않습니다. 그것은 내가 그것을 사용하려고 세포에서 # 가치 오류를 보여줍니다. 마우스를 사용하여 임의의 셀 범위를 함수의 매개 변수로 선택합니다.
Public Function NumberOfCells(ByVal range As Object) As Double
Dim r As Excel.Range = TryCast(range, Excel.Range)
Return CDbl(r.get_Cells.get_Count)
End Function
내가 만든 다음 기능은 작동하지 않습니다. #ref 오류가 발생했습니다. 직접 정수 (Add1 (1,2)) 또는 숫자가 들어있는 셀을 전달하여 호출했습니다.
Public Function Add1(ByVal i1 As Integer, ByVal i2 As Integer) As Integer
return i1+i2
End Function
나는이 작품을 만든 다음 기능 (?!?) :
Public Function Add1(ByVal i1 As Integer, ByVal i2 As Integer) As Integer
return 222
End Function
내가 꽤 C#을 경험하지만 vb.net에서, 그러나에 전혀하고이 부가 기능에 내가 필요 vb.net을 사용합니다. 나는 여기서 누락 된 단순한 것이 있다고 생각하지만 그것이 무엇인지 전혀 모른다. 또한 Microsoft에서 제공하는 코드가 작동하지 않는 것이 이상합니다.
편집 : 붙여 넣기 기능을 붙여 넣기 here으로 복사하고 Excel에서 같은 #Value 오류가 발생합니다. 나는 처음부터이지면에서 튜토리얼을 따르지 않았지만 나는 그날에 할 것이다.
편집 2 : 함수 이름에 숫자를 추가 할 때마다 Microsoft의 코드가 작동하지 않는다고 생각했습니다. Addqweqew 위의 예제 코드에서 Add1 이름을 바꾸면 작동 할 것입니다!
"하지 않습니다 "각 사건에 대해 구체적으로 어떤 오류가 있습니까? 이러한 기능을 테스트하기 위해 사용하는 데이터는 무엇입니까? – chancea
그에 따라 게시물을 편집했습니다! – gerodim