2009-07-20 9 views
1

안녕하세요 저는 excel-2007에 리본을 만드는 C# 프로그램이 있습니다. 그 리본에는 두 개의 버튼이 있는데 하나는 확대하고 다른 하나는 축소합니다.C# excel 확대 및 축소 버튼

나의 질문은 내가 위의 버튼 중 하나를 누른 다음 셀 또는 범위가 셀 또는 범위가 확대 또는 축소되는 시트에서 셀 또는 범위를 선택하면 어떻게 가능합니까?

내 문제는 두 가지 버튼에 이벤트를 할당하는 방법을 모른다는 것입니다.

private void ws_selCh1(Excel.Range Target) 
    { 
     MessageBox.Show(
      "Zoom Out:" + 
      Target.get_Address(mis, mis, 
      Excel.XlReferenceStyle.xlA1, mis, mis) 
      ); 
    } 
    private void ws_selCh2(Excel.Range Target) 
    { 
     MessageBox.Show(
      "Zoom In:" + 
      Target.get_Address(mis, mis, 
      Excel.XlReferenceStyle.xlA1, mis, mis) 
      ); 
    } 
    private void button1_Click(object sender, RibbonControlEventArgs e) 
    { 
     ws = Globals.ThisAddIn.GetActiveWorksheet(); 

     ws.SelectionChange += 
      new Excel.DocEvents_SelectionChangeEventHandler(
       ws_selCh1 
       ); 

    } 
    private void button2_Click(object sender, RibbonControlEventArgs e) 
    { 

     ws = Globals.ThisAddIn.GetActiveWorksheet(); 

     ws.SelectionChange += 
      new Excel.DocEvents_SelectionChangeEventHandler(
       ws_selCh2 
       ); 

    } 

는 현재 전 범위 또는 셀을 선택하고 감지하기 위해 노력했다 (그러나 그것은 나에게 문제를 야기) : 내가 그것을 내가 원하지 않는 ws_selCh1 및 ws_selCh2 모두 메시지를 표시하는 두 번째 버튼을 클릭하면 ... 다음, 물론,이 문제를 처리 한 후 나는 ... 다음 증가하고 감소 ... 해당 버튼을 클릭 세포 + 범위를 선택할 때마다 것

ws.Application.ActiveWindow.Zoom = 23; 

를 추가하고 싶었다.

올바른 방법인가요? 만약 아니라면, 나에게 더 나은 방법을 제안 할 수 있니? 또한 선택된 범위가 사용자의 활성 가시 범위가되는 방법은 무엇입니까?

많은 감사!

답변