Выражение доступа: подсчет уникальных значений в нескольких столбцах - PullRequest
0 голосов
/ 11 июня 2018

Как я могу использовать MS Access Expression для подсчета уникальных значений в нескольких столбцах, как показано ниже? Я использовал Countif в Excel, чтобы получить значение «Да» в столбце состояния, и теперь я хочу использовать выражение MS Access, чтобы получить те же результаты.

1 Ответ

0 голосов
/ 12 июня 2018

используйте функцию, чтобы сделать агрегат строк.

проверьте это

Public Function count_sum(col1 As String, col2 As String, col3 As String) As Integer


Dim count_yes As Integer

count_yes = 0

If (col1 = "YES") Then
count_yes = count_yes + 1
End If

If (col2 = "YES") Then
count_yes = count_yes + 1
End If

If (col3 = "YES") Then
count_yes = count_yes + 1
End If

count_sum = count_yes

End Function

вызовите эту функцию, используя следующий запрос

SELECT col1,col2,col3, count_sum([col1],[col2],[col3]) as Status
FROM Table1;

, вы также можете использоватьэта функция в условной форме.

enter image description here

В текстовом поле статуса добавьте источник управления, подобный этому, ИЛИ непосредственно используйте вышеуказанный запрос и выберите источник управления в качестве статуса.

=Nz(count_sum([col1];[col2];[col3]);0)
...