2

У меня есть книга Excel, которая требует, чтобы я вычислил сумму разных валют в одном столбце, вот результат, который я ищу:

$40.00 в Dollars был рассчитан на основе позиций A и C, поскольку их валюта одинакова, а $20.00 в Yen - это общая сумма для предметов с валютой в Yen . Это возможно? Пожалуйста, помогите, спасибо!

5 ответов5

1

Если вы открыты для пользовательской функции, попробуйте мой подход:

предположим, что ваши значения находятся в диапазоне B2:B4 и вам нужно вычислить общую сумму валюты из B2 , чем вы можете использовать формулу массива:

=SUMPRODUCT(IF(GetFormat(B2:B4)=GetFormat(B2),1,0),B2:B4)

Обратите внимание, что это формула массива, поэтому вам нужно нажать CTRL+SHIFT+ENTER

Но прежде чем добавить пользовательскую функцию в вашу книгу, вы получите массив числовых форматов диапазона:

Function GetFormat(r As Range)
    Dim arr() As String
    ReDim arr(1 To r.Cells.Count)
    i = 1
    For Each c In r
        arr(i) = c.NumberFormat
        i = i + 1
    Next c
    GetFormat = WorksheetFunction.Transpose(arr)
End Function
0

Кажется, трудно определить формат валюты с помощью формулы исключительно Excel.
Even =CELL("format",B2) не используется.


Подобно идее @kobaltz, этот метод нуждается в дополнительном столбце и подвержен ошибкам.

Дополнительный столбец валюты C:C может быть вставлен вручную или выбран из раскрывающегося списка с пользовательскими значениями "US" и "YAN".

| Доллары | =SUMIF(C:C,"US",B1:B3) |
| Ян | =SUMIF(C:C,"YAN",B1:B3) |

0

Есть два способа сделать это. Я рекомендую вам выделить знак валюты и номер, например, 100 фунтов стерлингов записываются как 100 в ячейке, а £ в соседней ячейке. Тогда у вас может быть 50e (евро) ниже 50 и e и так далее.

Первый метод предполагает использование сводных таблиц - очень просто.

Но еще более простой и предпочтительный способ заключается в следующем

В диапазоне от d2 до d19 у нас есть суммы (только цифры), а в диапазоне от c2 до c19 у нас есть такие символы, как e, £ или $ и т.д.

В отдельной ячейке, где я хочу показать сумму е, я ввожу:

= SUMIF(D2:D19, "е", С2: С19)

Рядом с ним я хочу суммировать £, поэтому я ввожу:

= SUMIF(D2:D19, "£", С2: С19)

Это работает как сон.

0

В диапазоне от B2 до B4 у нас есть суммы (только числа, 10,00, 20,00 и 30,00), а в диапазоне от C2 до C4 у нас есть символы ($, Yan, $)

В отдельной ячейке мы хотим показать сумму $, я ввожу:= SUMIFS(B2:B4, C2:C4, C5) Ячейка C5 заполнена "$"

Рядом с ним я хочу сложить Ян, поэтому я ввожу:= SUMIFS(B2:B4, C2:C4, C6) Ячейка C6 заполнена "Ян"

Оно работает.

0

Как это устроено:

  1. Нажмите Ctrl+F3 и нажмите New .
  2. Напишите Cell_Format в поле Name Box .
  3. Введите это в Refers To Box .

     =GET.CELL(53,Sheet1!$B2)
    

NB Sheet1!$B2 доступен для редактирования.

  1. Запишите эту формулу в ячейку C2 и заполните.

    =LEFT(Cell_Format,1)
    
  2. Введите символы $, ₹ & £ в ячейку D2, D3 & D4 .

  3. Запишите эту формулу в ячейку C8 и заполните.

    =SUMIF($C$2:$C$6,D2,$B$2:$B$6)
    

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