2009-12-08 6 views
1

Excel은 스프레드 시트 소프트웨어로서 많은 기업에서 비즈니스 인텔리전스를위한 훨씬 앞선 UI입니다. 종종 VBA는 확장을 작성하거나 다른 DLL을 호출하는 데 사용됩니다.F #, Office의 다른 VBA?

Excel 자체가 기능적이기 때문에 F #은 Excel 데이터 분석 절차를 잘 작성합니다.

나는 F # 또는 F # 변종이 다음 VBA가 될지 생각하고 있습니다. 어떤 소식이나 소문이 있니?

편집 : 나는 사무실에있는 VBA를 바꾸는 것을 의미하지 않습니다. 나는 F #이 스크립트를 작성하기 위해 Office에서 대안이 될 수 있음을 의미합니다.

+1

아니요, 아니요, 아니요! ... –

+2

F # 근처에 갈 VBA 개발자를 만난 적이 있습니까? 일반적인 명령형/기능적인 것 외에도 언어가 쉽게 변환 할 수있을만큼 유사하다고 생각하지 않습니다 .- – Joey

+0

@Johannes VBA 개발자에게 F #을 배우도록 요청하는 것은 아닙니다. 저는 F #이 VBA의 일을하는 또 다른 방법이라고 언급하고 싶습니다! –

답변

2

F #이 "다음"VBA 일 가능성이 높은 후보는 아닙니다. 이제 VBA Excel에서 사용되는 두 가지 방법을 살펴 보자 :

1) 작성 사용자 정의 함수

2) 스프레드 시트 조작을 자동화

I (2) 훨씬 더 일반적인 것보다라고 생각합니다 (1). 이는 Excel 개체 모델을 사용하는 대부분의 필수 작업이며 F #의 기능적 강점을 충족시키지 못합니다. 그것은 F # 또는 다른 언어가 명령형 스프레드 시트 작업을 스크립팅하는 데는 좋지 않지만 VBA는이를 잘 처리하며 (BASIC 조상과 마찬가지로) 경험이 부족한 프로그래머를 대상으로합니다. VBA는 엑셀의 성공에 매우 중요했습니다. 왜냐하면 최종 사용자가 프로그래머보다 더 많은 사람들에게 "최종 사용자 프로그래밍"을 상대적으로 쉽게하기 때문입니다.

다른 사람들도 지적했듯이 (1) Excel과 긴밀하게 통합되지 않은 라이브러리 형식이지만 F #에서 즉시 수행 할 수 있습니다. 나 자신은 시트 자체와 더 긴밀하게 통합 된 실제 기능 언어를 죽일 것이다. 그러나, 나는 그것이 F # 그 자체처럼 보일 것이라고 생각하지 않는다. 진정한 승리는 Excel 형식의 구문으로 함수를 표현하고이를 스프레드 시트의 최상위 값으로 사용할 수있는 능력입니다. 최근에 동료와 저는 꽤 복잡하지만 Excel에서 작성 및 제공해야하는 일부 모델을 작성했습니다. 우리는 이러한 라인을 따라 실험했으며, 우리에게는 유용 할 것으로 보이지만, 우리의 구현은 확실히 까다 롭습니다.

4

MS는 모든 .NET 언어와 MS Office 사이의 다리 인 VSTO을 제공합니다. 이 작업을 위해 다른 .NET 언어에 비해 F #을 선호하지는 않을 것입니다.

1

Office interop에 F #을 사용하려는 경우 dynamic lookup operator "?"을 사용해 볼 수도 있지만 C#'s dynamic을 선호합니다.

Excel 용 수학 함수 작성을 의미하는 경우 그렇습니다. F #은이를위한 좋은 도구입니다. 사실 here's a rewrite of Excel's financial functions in F#입니다. F #에서 고유 한 함수를 작성한 다음 VBA를 사용하여 Excel에서 호출 할 수 있습니다.

+0

좋은 지적! 나는 실제로 F #을 스크립트 언어로 사용할 수 있으므로 MS가 F #을 다른 오피스 제품의 VBA로 사용할 것인지 생각 중입니다. –