2012-08-10 4 views
2

리본 컨트롤에서 활성 범위를 가져 오려고합니다. 선택한 셀만 리본에 컨트롤이 필요할 때만 액세스 할 수있는 방법이 있어야합니다.사무실 리본 컨트롤에서 선택된 셀을 얻는 방법

현재이 방법을 사용하고 있습니다.

나는 이것이 약하고 낭비된다고 느낍니다.
첫째, 선택 사항이 변경 될 때마다 코드가 실행됩니다. 두 번째로, 나는 두 개 이상의 복사본을 사용한다.

제가 이것을 간과 할 수있는 더 좋은 방법이되어야합니다.

답변

3

Application 개체의 Selection 속성에 액세스하여 활성 시트에서 현재 선택된 범위에 액세스 할 수 있습니다.

private void button1_Click(object sender, RibbonControlEventArgs e) 
{ 
    this.ActiveRange = (Excel.Range)Globals.ThisAddIn.Application.Selection; 
} 

MSDN 문서 :

+0

는 이전에 이것은 단지 나를 위해 컬렉션의 첫 번째 셀을 선택합니다. 나는 타입을 명시 적으로 범위로 지정할 때 그것을 깨달았다. 당신은 * List selectedCells * 또는 var. 나는 이것이 가치가 있다고 생각한다. 물론 이것은 명백한 것 같습니다 ... Go Stack! –

관련 문제