0 / 0 / 0
Регистрация: 30.05.2012
Сообщений: 14
1

Макрос: Поиск значения (текст) и сложение ячейки справа от него

26.06.2012, 08:39. Показов 5275. Ответов 7
Метки нет (Все метки)

Дана таблица во вложении.
Нужно: Провести поиск значения "Принтеры", и при нахождении складывать значение из столбца AN.
Например, в прикрепленном файле Принтеры есть в AF1146 и AF1156, при нахождении слова Принтеры, например, в АF1146 он бы складывал 60,000, затем при дальнейшем нахождении на ячейки A1156 ту сумму AN (120,000) складывалось бы с предыдущим (т.е. 180.000).
Таким образом макрос должен находить принтеры и складывать их стоимость в одной ячейке (можно даже на втором листе).

Надеюсь понятно расписал, заранее спасибо.
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Миниатюры
Макрос: Поиск значения (текст) и сложение ячейки справа от него  
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.06.2012, 08:39
Ответы с готовыми решениями:

Откорректировать макрос так, чтобы поиск осуществлялся не с ячейки А1, а с ячейки C21
Как в этом макросе прописать, чтобы поиск осуществлялся в столбике "С", но с 21-ой строки? Sub...

Макрос: Поиск совпадений, перенос совпавшей ячейки и рядом с ней стоящей ячейки
Доброго времени суток ! Прошу помощи с написанием макроса, очень очень очень выручите! Задача...

Макрос для поиска ячеек с заданным значением и вставка заданного количества столбцов справа каждой найденной ячейки
Добрый день! Прошу подсказать как написать макрос для excel таблицы, чтобы искал все ячейки строки...

Работа с текстом, поиск слова, а также 3 слов слева и справа от него
Дан файл, и ключевое слово, в тексте найти это слово, а так же 3 слова слева и 3 слова справа от...

7
2774 / 708 / 104
Регистрация: 04.02.2011
Сообщений: 1,432
26.06.2012, 09:15 2
Лучший ответ Сообщение было отмечено как решение

Решение

Ответ на скрине
6
Миниатюры
Макрос: Поиск значения (текст) и сложение ячейки справа от него  
Dragokas
26.06.2012, 20:22
  #3

Не по теме:

Хочу скрин этого макроса :D

0
0 / 0 / 0
Регистрация: 30.05.2012
Сообщений: 14
28.06.2012, 17:24  [ТС] 4
Цитата Сообщение от mc-black Посмотреть сообщение
Ответ на скрине
Извиняюсь, сглупил дико, спасибо большое
0
2774 / 708 / 104
Регистрация: 04.02.2011
Сообщений: 1,432
28.06.2012, 21:31 5
Цитата Сообщение от Cheezo
Добрый вечер.
Извиняюсь за прошлую глупость (Скрин вместо документа).
http://rghost.ru/38875122
Вот сам файл.
Нужно внизу сделать так:
2 ячейки, в одну вводится город (из столбика В) а в другую название (принтер, МИС, монитор), и рядом выводилась бы сумма (например: Принтер/Кемерово - выводится сумма принтеров в Кемерово).
Вроде просто, но у меня что-то глупость получается какая-то
1. Так там ведь и не только Притеры, Мониторы, МИС, есть и другие градации: Тонкие клиенты, Монтаж ЛВС, разработка и внедрение политики информационной безопасности, как быть с этим - выводить в подитогах это надо, либо интересуют только названные 3 позиции?

2. Надо ли выводить те же Принтеры, если количество по ним в городе = 0?

Можно предложить 2 разных варианта:
- либо Вы вводите 2 дополнительные вспомогательные колонки и при помощи несложных ручных манипуляций с протягиванием формул и дописыванием той же функции =СУММЕСЛИ(...);
- либо надо написать макрос, который дорисует все как надо сам. В этом случае Вам обязательно надо пояснить, какие именно строки брать для промежуточных итогов, а какие - не брать вовсе (пропускать в расчетах)?

Желательно не постите в личку свои вопросы. У Вас больше шансов на ответ, когда пишете в общий форум. Уточните по Вашей задачи и кто-то, я или другие, могут помочь.
1
0 / 0 / 0
Регистрация: 30.05.2012
Сообщений: 14
28.06.2012, 23:05  [ТС] 6
1) Да, все эти позиции, которые есть в таблице.
2) Думаю тогда пусть пишется либо 0, либо фраза в духе "Нет".
0
0 / 0 / 0
Регистрация: 30.05.2012
Сообщений: 14
30.06.2012, 19:46  [ТС] 7
Все еще актуально.

Добавлено через 10 минут
Не обязательно решать за меня, можете просто подсказать, в каком направлении двигаться
0
2774 / 708 / 104
Регистрация: 04.02.2011
Сообщений: 1,432
02.07.2012, 10:11 8
Попробуй этот макрос:
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
Sub SubTotals()
    Dim i As Long, j As Long, k As Long, m As Long, n As Long, b As Boolean
    Dim wsh As Worksheet, arr(), arrCat(), sCity As String
    
    Set wsh = ThisWorkbook.Worksheets("Лист1")
    
    ' Найти последнюю непустую строку
    For m = wsh.UsedRange.Row + wsh.UsedRange.Rows.Count - 1 To 1 Step -1
        If wsh.Rows(m).Text = "" Then Else Exit For
    Next m
    arr = wsh.Range(wsh.Cells(1, 1), wsh.Cells(m, 43)).Value
    
    ' Составление массива категорий (без повторений)
    i = 15: n = 1
    Do While i <= m
        If arr(i, 32) <> "" And arr(i, 39) <> "" Then
            b = True
            j = 1
            Do While j < n
                If arr(i, 32) = arrCat(j) Then
                    b = False
                    Exit Do
                End If
                j = j + 1
            Loop
            If b Then
                ReDim Preserve arrCat(1 To n)
                arrCat(n) = arr(i, 32)
                n = n + 1
            End If
        End If
        i = i + 1
    Loop
    
    ' Расчет интервалов по городам и вставка формул СУММЕСЛИ
    i = 15: sCity = arr(15, 2): j = m + 1: n = 15
    Do While i <= m
        If arr(i, 2) <> "" And arr(i, 2) <> "ИТОГО" Then
        If arr(i, 2) <> sCity Or i = m Then
            k = 1
            Do While k <= UBound(arrCat)
                wsh.Cells(j, 2).Value = sCity
                wsh.Cells(j, 32).Value = arrCat(k)
                wsh.Cells(j, 39).FormulaR1C1 = "=SUMIF(R" & n & "C32:R" & i - 1 & "C32,RC32,R" & n & "C:R" & i - 1 & "C)"
                wsh.Cells(j, 39).NumberFormat = "#,##0.00;[Red]-#,##0.00;-;"
                j = j + 1
                k = k + 1
            Loop
            n = i
            sCity = arr(i, 2)
        End If
        End If
        i = i + 1
    Loop
    
    Set wsh = Nothing
End Sub
Для работы макроса файл должен быть пересохранен как .xls или как .xlsm (у Вас выложен файл .xlsx)
0
Вложения
Тип файла: zip city_n_cats.zip (84.2 Кб, 71 просмотров)
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.07.2012, 10:11

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Поиск ячейки и сложение соседних, и работа с текстовым файлом
1) Имеются столбцы А и В. В столбец А записывается текстовое наименование товара. В столбец В...

Массив: Вывести индексы тех элементов массива, значения которых больше, чем у стоящих справа от него
Задан целочисленный массив вывести индексы тех элементов, значения которых больше, чем у стоящих...

Перемещение значения из ячейки влево и вниз при условии, что ячейка справа от нее пустая
Добрый день! Прошу помощи, уважаемые гуру! Есть файл, в котором в один столбец занесены названия и...

Вставить определенный текст в пустые ячейки таблицы word, поправить макрос
Добрый день, ребята выручайте! Часа 3 пытаюсь найти не получается. Задача - есть таблица word,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.