У меня есть список данных, некоторые из них выделены, а некоторые нет. Есть ли способ применить функцию (любую функцию) только к выделенным ячейкам в Excel? Я провел небольшой поиск в Интернете и обнаружил, что есть несколько способов использовать функцию sumif и коды Vba, но они применимы только к определенной функции. Благодарю.

У меня есть функция VBA, и я хотел бы использовать ее только с выделенными ячейками. Код доступен ниже. В приведенном ниже примере я хотел бы объединить только выделенные ячейки.

Function Concatenatecells(ConcatArea As Range) As String
'updateby Extendoffice 20151103
  For Each n In ConcatArea: nn = IIf(n = "", nn & "", nn & n & ","): Next
  Concatenatecells = Left(nn, Len(nn) - 1)
End Function

1 ответ1

2

Вам необходимо проверить InteriorColor каждой ячейки:

Function Concatenatecells(ConcatArea As Range) As String
    Dim n As Range, nn As String
    nn = ""
    For Each n In ConcatArea
        If n.Interior.Color <> 16777215 Then
            nn = IIf(n = "", nn & "", nn & n & ",")
        End If
    Next n

    If nn <> "" Then
        Concatenatecells = Left(nn, Len(nn) - 1)
    Else
        Concatenatecells = ""
    End If
End Function

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .