2009-12-30 3 views
2

C#에서 테이블을 조작 할 수는 없지만 VBA를 통해 할 수있는 것처럼 들었습니다.Excel vba로 할 수있는 것은 무엇입니까? C#

C# PIA를 통해 수행 할 수없는 VBA를 통해 수행 할 수있는 작업을 아는 사람이 있습니까?

+0

어떤 테이블에 대해 이야기하고 있습니까? – Oded

+0

............. VBA 또는 VB.NET? –

+1

나는 C#과 VB.NET으로 할 수있는 것에 차이가있을 것이라고 생각하지 않는다. – A9S6

답변

3

Excel 추가 기능에서 작업하는 동안 한가지 기억해야 할 점은 워크 시트에 추가 된 그림/모양의 OnAction 메서드가 제한 사항처럼 보이는 C# addin을 호출하지 않는다는 것입니다. OnAction은 VBA 매크로에만 설정할 수 있습니다. 이것은 C#과 VBA의 차이점에 대한 귀하의 질문과 직접적으로 관련이 없을 수도 있지만 질문을 보았을 때 마음을 넘어 섰습니다.

1

기본적으로 실제 차이점은 없습니다. 어느 환경에서나 무엇이든 할 수 있습니다. 특히 VB.net과 C#에 대해 이야기하는 경우에는 동일한 라이브러리 및 플랫폼을 대상으로하는 구문이 다소 다릅니다.

한 언어의 특정 기능이 다른 기능과 직접적으로 다른 점이 있지만 일부 기본 요소가있는 한 두 언어에서 같은 목적을 달성 할 수있는 코드를 작성할 수 있습니다.

일부 프로그램에서는 매크로에 VB 스크립트 (VB 변형)를 사용할 수 있으며 이러한 경우 C#을 직접 대체 할 수 없습니다. 하지만 그것은 VB/C# 자체가 아닌 호스트 프로그램의 한계입니다.

편집 : 질문을 완전히 변경 했으므로이 답변은 더 이상 적합하지 않습니다.

+0

이다. 당신이 완전히 질문을 바꿀 수 있다는 것이 이상하다. – Juliusz

1

Visual Studio가 설치되어 있지 않으므로 C#을 사용하여 사용자 PC에서 문제를 디버깅 할 수 없습니다. Excel VBA를 사용하면 코드를 실행하는 모든 PC에서 디버깅 할 수 있습니다.

편집 (익명 '의견에 대한 응답)이이 동일하지 않습니다 원격 디버깅, 이해까지 수있는 동안

. 디버그 트래픽을 허용하려면 방화벽을 열어야하며 (대기업에서 중요한 사인을 필요로 할 수 있음) 진행중인 사용자 문제를 디버그하고 복구 할 수는 없습니다. 분명히 이것은 대부분의 프로그래밍 환경에서 수행 될 수는 없지만 VBA의 강점 중 하나였습니다 - 글쎄, 당신의 관점에 따라, 나는 생각합니다.

+0

클라이언트 컴퓨터에 원격 디버그 패키지를 설치하기 만하면 원격 디버깅을 사용할 수 있습니까? 대부분의 시나리오는 개발자 컴퓨터와 동일한 회사 네트워크에서 디버깅됩니다. –

0

저는 비즈니스 관점에서 가장 중요한 차이점은 C#을 사용하면 코드 (매크로)를 생성 할 수있는 많은 "비 프로그래머"LOB 관리자 등이 없다는 것입니다. 프로세스가 본질적으로보다 공식화되었습니다.

구문의 관점에서 많은 차이가 있지만 실제로는 개체 모델을 사용하는 능력면에서 문제가되지 않습니다.

때때로 C#은 몇 줄의 코드가 필요하지만 다른 코드 줄은 더 필요합니다. 또한 시스템 API 호출을 사용해야하는 시간이 많이 중복된다는 것을 알 수 있습니다.

관련 문제