programing

MergeArea를 사용하여 VBA Excel에서 병합된 셀을 검출합니다.

sourcetip 2023. 4. 22. 23:01
반응형

MergeArea를 사용하여 VBA Excel에서 병합된 셀을 검출합니다.

이것은 매우 문제가 있습니다.엑셀 테이블에서 수평과 수직으로 병합된 셀을 검출해야 합니다.첫 번째 셀 좌표와 병합된 영역의 밝기를 저장해야 합니다.한 줄 한 줄씩 두 개의 순환기를 가지고 테이블 전체를 반복합니다.

MergeArea 속성을 사용하여 병합된 영역과 병합되지 않은 영역을 검출하려면 어떻게 해야 합니까?셀이 Marge되지 않으면 빈 범위가 반환될 수 있습니다.단, 다음과 같습니다.

"current Range가 아무것도 아닌 경우"

전혀 작동하지 않습니다.좋은 생각 있어요?정말 감사해요.

여기에는 몇 가지 유용한 코드가 있습니다.

병합된 셀에 커서를 놓고 Immidiate 창에서 다음 질문을 합니다.

액티브 셀은 Marge Cell입니까?

? Activecell.Mergecells
 True

몇 개의 셀이 Marge됩니까?

? Activecell.MergeArea.Cells.Count
 2

몇 개의 열이 병합됩니까?

? Activecell.MergeArea.Columns.Count
 2

몇 개의 행이 병합됩니까?

? Activecell.MergeArea.Rows.Count
  1

병합된 범위 주소가 어떻게 되죠?

? activecell.MergeArea.Address
  $F$2:$F$3

@tbur와 같이 선택한 셀을 사용하면 편리하지만 이 옵션만 사용할 수 있는 것은 아닙니다.

다음과 같이 Range()사용할 수 있습니다.

If Worksheets("Sheet1").Range("A1").MergeCells Then
  Do something
Else
  Do something else
End If

또는 다음 중 하나를 선택합니다.

If Worksheets("Sheet1").Range("A1:C1").MergeCells Then
  Do something
Else
  Do something else
End If

Cells()를 사용할 도 있습니다.

If Worksheets("Sheet1").Cells(1, 1).MergeCells Then
  Do something
Else
  Do something else
End If

언급URL : https://stackoverflow.com/questions/22075988/detect-merged-cells-in-vba-excel-with-mergearea

반응형