2013-05-09 2 views
0

나는 VBA에 꽤 익숙하지 않다. 이것은 간단한 질문이거나 이미 대답했다면 ... 미안하지만 MSDN에서 검색을 시도했지만 이것을 구현하는 데 아무런 도움이되지 못했다.C#에서 VBA 코드로 값을 전달 하시겠습니까?

사용자에게 Excel을 다운로드하기 전에 VBA 코드에 문자열 (예 : xyzserver : 4500/Home/GetExcelData)을 보내야합니다.

Excel VBA 코드에서 MVC 작업 메서드를 호출하고 일부 데이터를 가져 와서 Excel에 표시하고 있습니다.

호스트 이름 (xyzserver : 4500)이 다른 서버에서 다른 경우 사용자가 액세스하는 서버 URL을 기반으로 동적으로 URL을 업데이트해야합니다.

기본적으로 모듈의 URL을 업데이트하려면 VBA 코드에 서버 이름을 보내야합니다. C# (MVC 동작)에서 VBA로 값을 보내고 유지할 수있는 방법이 있습니까?

세션/응용 프로그램 캐시 VBA에서 사용할 수있는 것들은 무엇입니까? 당신은이 방법으로 VBA에 C#을에서 매개 변수를 전달할 수 있습니다

답변

0

사전에

감사 :

Excel.Application app = new Microsoft.Office.Interop.Excel.Application(); 
Excel.Workbook wb = app.Workbooks.Open("your file here which contains the macro"); 
string url = "blah blah"; 
app.Run("name of macro here", url); 

당신이 편집 프로그램 VBA 코드하려는 경우, 당신은을 참조해야합니다 VBIDE. 칩 피어슨의 탁월한 웹 사이트를 살펴보십시오. http://www.cpearson.com/Excel/vbe.aspx

+0

큰 도움을 주셔서 감사합니다. 내가 시도하고 여기에 내 문제의 업데이 트를 게시 할 것입니다 :) – Santhosh

+0

C# 코드에서 엑셀 매크로를 실행하는 것이 안전합니까? 동일한 엑셀을 여러 사용자가 동시에 다운로드 할 수 있기 때문입니다. Excel은 단일 스레드 응용 프로그램이기 때문에 여러 사용자가 동일한 쿼리를 실행할 때 어떻게 동작합니까? (동시에 다운로드한다는 의미입니까?) – Santhosh

관련 문제