Вопрос: Имеется массив где первый столбец - клиенты, второй-наименование полученной ими продукции, третий кол-во кг. Как с помощью Exel можно получить данные не только о количестве проданной продукции одного вида и не только о количестве полученного товара одним клиентов, а завязать это формулой так, чтобы получить данные на конкретного клиента по конкретному товару? Перепробовал много формул, но не выходит.
Ответ: Несколько способов имеется:
1) Выделяешь самую первую строку, где у тебя "шапка" таблицы (где написано "Клиент", "продукция", "масса" или типа того). Выбираешь меню ДАННЫЕ - ФИЛЬТР - АВТОФИЛЬТР. Теперь ты можешь в первой колонке выбрать любого клиента и при этом во второй выбрать любой его товар. Если тебе надо видеть сумму, то внизу, под таблицей, когда уже что-то выбрано, в ячейке под столбцом "масса" выбираешь ячейку, жмешь кнопочку "Автосумма" и выбираешь весь столбец. У тебя в этой ячейке будет формула типа:
=ПРОМЕЖУТОЧНЫЕ.ИТОГИ(9;C2:C21)
Теперь ты можешь выбирать любого клиента и при этом любую его продукцию, и в этой ячейке будет сумма по выбранному клиенту по выбранному товару.
2) Предположим, что твои столбцы - это соответственно столбцы A B C. Тогда в столбце D пиши формулу:
=СЦЕПИТЬ(А2;" ";В2)
И получится в ней название клиента и название продукции через пробел (вместо пробела можешь поставить тире, запятую или что хочешь). Теперь выделяешь всю таблицу, сортируешь в первую очередь по клиенту, затем - по товару. И теперь выбираешь меню ДАННЫЕ-ИТОГИ, указываешь, по какому столбцу суммировать, и получится примерно такое:
ОАО "Альфа" Рыба 320
ОАО"Альфа" Мясо 540
ООО "Гамма" Куры 781
В общем, итожки такие :)
Вопрос: Как в Excel при просмотре листа в VBA определить последнюю строку в таблице, в которой есть данные?
Ответ: Для непрерывного массива данных подходит следующий код:
LastRow=Range("A1").CurrentRegion.Rows.Count
Вместо A1 подставить какую-либо ячейку внутри массива данных.
Соответственно, последняя колонка определяется так:
LastColumn=Range("A1").CurrentRegion.Columns.Count
Митрич
Вопрос: Дана исходная таблица с колонками:
- наименование товара
- кол-во проданного товара (целое число)
- период (целое число)
Необходимо получить таблицу, где колонкам бы соответствовали периоды, а строкам номера товаров. На пересечениях - кол-ва проданных.
Не в каждом периоде присутствуют все товары (где нету - подразумеваем 0).
Как заполнить таблицу? Офис английский.
Ответ: Это классическая задача для решения в сводной таблице. Причем ни перечень товаров, ни перечень периодов отдельно не нужны. Все будет вычисляться автоматически. Хотя, если в списке нет значений для некоторых возможных периодов, которые обязательно должны отразиться в таблице вне зависимости от существования данных для этого периода, я бы внес в список хотя бы по одному нулевому ("фальшивому") значению для каждого периода, который обязательно должен появиться в сводной таблице.
Меню - Data - Pivot Table...
Евгений
Вопрос: Не подскажете, как в Excel определить содержимое ячейки - число там или символ? Как это выразить в макросе? Если число, то... Если символ, то...
Ответ: Получился вот такой макрос:
Sub Число_Символ()
If IsNumeric(Cells(1, 1)) = True Then
Cells(1, 2) = "Число"
Else: Cells(1, 2) = "Символ"
End If
End Sub
Анатолий Киюк
Вопрос: Как, пробежавшись по строке, сложить только числа и только определенного цвета (например, синего)!
У меня почему-то не срабатывает строка
If IsNumeric(Cells(1, 1)) = True And Selection.Font.ColorIndex = 5 Then...
Ответ: Примерно так:
Sub Число_Символ()
For x = 1 To 10 'x - число столбцов в таблице
If IsNumeric(Cells(1, x)) = True And Cells(1, x).Font.ColorIndex = 5
Then
сумма = сумма + Cells(1, x).Value
End If
Next x
Cells(2, 1) = сумма
End Sub
FatCat, Анатолий Киюк
Вопрос: Имеется табличка в Excel, содержащая помимо прочего столбцы <Код товара> и <Описание товара>. Так вот вопрос, можно ли сделать средствами Excel чтобы при вводе значения в столбец <Код товара> в столбце <Описание товара> происходило автоматическое заполнение из базы, содержащейся либо в этой же книге, но на другом листе, либо из другого файла?
Ответ: Можно. В свое время я делал такое заполнение следующим образом: на отдельном листе размещал список из двух столбцов - код и наименования, на рабочем листе в колонке, где должно наименование появиться, писал формулу.
Функция называется ВПР. Ищет значение в крайнем левом столбце таблицы и возвращает значение в той же строке из указанного столбца таблицы. В данном случае ищет артикул в базе и, если находит, то подставляет значение, соответствующее номеру столбца, который мы указываем.
Евгений
Вопрос: Существует столбец в таблице в который заносятся фамилии работников. Необходимо чтобы в конце столбца было указано количество занесенных фамилий.
Таблица выглядит примерно так:
Иванов
Петров
0
Сидоров
Итого: 3 (в этой строке должен быть результат)
0 - это резерв для фамилии, но сейчас подсчитывать не нужно.
Ответ: Вариант:
=СЧЁТЗНАЧ(A1:A5)-СЧЁТЕСЛИ(A1:A5;0)
Подсчитываем общее количество строк и вычитаем нулевые.
Вариант два: добавляем еще один столбец с формулой
=ЕСЛИ(ЕТЕКСТ(A1);1;0)
Она выдаст 1, если в ячейке А1 - фамилия. Остается просуммировать все значения ячеек с данной формулой.
Анатолий Киюк.
Егор Гостев. По материалам системы взаимопомощи "Эксперт".