Суммирование после удаления
ant6729
Дата: Суббота, 18.03.2017, 17:58 |
Сообщение № 1
Группа: Проверенные
Ранг: Ветеран
Сообщений: 533
Репутация:
2
±
Замечаний:
40% ±
Excel 2010
Есть код [vba]Код
Sub Ìàêðîñ3() Sub Макрос1() '' Макрос2 Макрос ' Columns("A:F").Select ' Selection.Replace What:="0", Replacement:="", LookAt:=xlPart, _ ' SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ' ReplaceFormat:=False With Range("A:F") .Replace What:="0", Replacement:="" .SpecialCells(xlCellTypeBlanks).Delete Shift:=xlToLeft End With End Sub End Sub
[/vba] Но нужно, чтобы в колонке А:A в результате проставлялась сумма Интересует, как это может быть сделано
Есть код [vba]Код
Sub Ìàêðîñ3() Sub Макрос1() '' Макрос2 Макрос ' Columns("A:F").Select ' Selection.Replace What:="0", Replacement:="", LookAt:=xlPart, _ ' SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ' ReplaceFormat:=False With Range("A:F") .Replace What:="0", Replacement:="" .SpecialCells(xlCellTypeBlanks).Delete Shift:=xlToLeft End With End Sub End Sub
[/vba] Но нужно, чтобы в колонке А:A в результате проставлялась сумма Интересует, как это может быть сделано ant6729
Ответить
Сообщение Есть код [vba]Код
Sub Ìàêðîñ3() Sub Макрос1() '' Макрос2 Макрос ' Columns("A:F").Select ' Selection.Replace What:="0", Replacement:="", LookAt:=xlPart, _ ' SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ' ReplaceFormat:=False With Range("A:F") .Replace What:="0", Replacement:="" .SpecialCells(xlCellTypeBlanks).Delete Shift:=xlToLeft End With End Sub End Sub
[/vba] Но нужно, чтобы в колонке А:A в результате проставлялась сумма Интересует, как это может быть сделано Автор - ant6729 Дата добавления - 18.03.2017 в 17:58
Roman777
Дата: Суббота, 18.03.2017, 18:50 |
Сообщение № 2
Группа: Проверенные
Ранг: Ветеран
Сообщений: 980
Репутация:
127
±
Замечаний:
0% ±
Excel 2007, Excel 2013
ant6729 , не очень понятно, Вы хотите просуммировать ячейки B1:F1 в ячейку A1, B2:F2 в ячейку A2 и тд.. или вы хотите в конце столбца А (ячейка A18 по Вашему примеру) увидеть сумму значений А1:A17? И не понял, зачем Вы привелик код Вашего макроса с заменой нулей на ""...
ant6729 , не очень понятно, Вы хотите просуммировать ячейки B1:F1 в ячейку A1, B2:F2 в ячейку A2 и тд.. или вы хотите в конце столбца А (ячейка A18 по Вашему примеру) увидеть сумму значений А1:A17? И не понял, зачем Вы привелик код Вашего макроса с заменой нулей на ""...Roman777
Много чего не знаю!!!!
Сообщение отредактировал Roman777 - Суббота, 18.03.2017, 18:50
Ответить
Сообщение ant6729 , не очень понятно, Вы хотите просуммировать ячейки B1:F1 в ячейку A1, B2:F2 в ячейку A2 и тд.. или вы хотите в конце столбца А (ячейка A18 по Вашему примеру) увидеть сумму значений А1:A17? И не понял, зачем Вы привелик код Вашего макроса с заменой нулей на ""...Автор - Roman777 Дата добавления - 18.03.2017 в 18:50
ant6729
Дата: Суббота, 18.03.2017, 19:24 |
Сообщение № 3
Группа: Проверенные
Ранг: Ветеран
Сообщений: 533
Репутация:
2
±
Замечаний:
40% ±
Excel 2010
хочу чтобы изначально удалились все числа типа 0 если вместо нуля будет буква, то удалится она (она всегда будет одинакова везде) И этот момент убирается кодом выше А потом из того, что осталось проссумировать в ячейку а1 сумму (B1:L1) например проссумировать в ячейку B1 сумму (B2:L2) и так далее пример кода... возможно, потому что то, что будет дописываться, будет продолжением... нули могут заменяться на буквенные знаки
хочу чтобы изначально удалились все числа типа 0 если вместо нуля будет буква, то удалится она (она всегда будет одинакова везде) И этот момент убирается кодом выше А потом из того, что осталось проссумировать в ячейку а1 сумму (B1:L1) например проссумировать в ячейку B1 сумму (B2:L2) и так далее пример кода... возможно, потому что то, что будет дописываться, будет продолжением... нули могут заменяться на буквенные знаки ant6729
Сообщение отредактировал ant6729 - Суббота, 18.03.2017, 22:28
Ответить
Сообщение хочу чтобы изначально удалились все числа типа 0 если вместо нуля будет буква, то удалится она (она всегда будет одинакова везде) И этот момент убирается кодом выше А потом из того, что осталось проссумировать в ячейку а1 сумму (B1:L1) например проссумировать в ячейку B1 сумму (B2:L2) и так далее пример кода... возможно, потому что то, что будет дописываться, будет продолжением... нули могут заменяться на буквенные знаки Автор - ant6729 Дата добавления - 18.03.2017 в 19:24
ant6729
Дата: Воскресенье, 19.03.2017, 10:12 |
Сообщение № 4
Группа: Проверенные
Ранг: Ветеран
Сообщений: 533
Репутация:
2
±
Замечаний:
40% ±
Excel 2010
Я макросом знаю, как это сделать, но вот, уточняю, как это можно было бы реализовать иначе... через циклы, например, хотелось бы увидеть альтернативные варианты.
Я макросом знаю, как это сделать, но вот, уточняю, как это можно было бы реализовать иначе... через циклы, например, хотелось бы увидеть альтернативные варианты. ant6729
Ответить
Сообщение Я макросом знаю, как это сделать, но вот, уточняю, как это можно было бы реализовать иначе... через циклы, например, хотелось бы увидеть альтернативные варианты. Автор - ant6729 Дата добавления - 19.03.2017 в 10:12
RAN
Дата: Воскресенье, 19.03.2017, 15:21 |
Сообщение № 5
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
[vba]Код
Sub qq() Dim r As Range Set r = Range("A1").CurrentRegion r.Offset(, r.Columns.Count).Resize(, 1).FormulaR1C1 = "=SUM(RC[-6]:RC[-1])" r.Offset(, r.Columns.Count).Resize(, 1).Value = r.Offset(, r.Columns.Count).Resize(, 1).Value r.EntireColumn.Delete End Sub
[/vba]
[vba]Код
Sub qq() Dim r As Range Set r = Range("A1").CurrentRegion r.Offset(, r.Columns.Count).Resize(, 1).FormulaR1C1 = "=SUM(RC[-6]:RC[-1])" r.Offset(, r.Columns.Count).Resize(, 1).Value = r.Offset(, r.Columns.Count).Resize(, 1).Value r.EntireColumn.Delete End Sub
[/vba] RAN
Быть или не быть, вот в чем загвоздка!
Ответить
Сообщение [vba]Код
Sub qq() Dim r As Range Set r = Range("A1").CurrentRegion r.Offset(, r.Columns.Count).Resize(, 1).FormulaR1C1 = "=SUM(RC[-6]:RC[-1])" r.Offset(, r.Columns.Count).Resize(, 1).Value = r.Offset(, r.Columns.Count).Resize(, 1).Value r.EntireColumn.Delete End Sub
[/vba] Автор - RAN Дата добавления - 19.03.2017 в 15:21
ant6729
Дата: Воскресенье, 19.03.2017, 18:08 |
Сообщение № 6
Группа: Проверенные
Ранг: Ветеран
Сообщений: 533
Репутация:
2
±
Замечаний:
40% ±
Excel 2010
Блин....как бы да...с точки зрения конечного результата - да. Мой код вообще тогда не нужен. Хочу спросить... А где в коде видно, что сумма будет проставляться в колонку G, как у Вас...? Или она ставится автоматически сразу после всего указанного диапазона суммирования? И можно ли как-то используя выражение Shift:=xlToLeft таким образом, что сначала спрессовать обезнуленные значения не к первой колонке, а ко второй? А потом дальше накинуть формулу суммы в первую колонку, а то, что останется справа сделать r.EntireColumn.Delete? Как-то так..
Блин....как бы да...с точки зрения конечного результата - да. Мой код вообще тогда не нужен. Хочу спросить... А где в коде видно, что сумма будет проставляться в колонку G, как у Вас...? Или она ставится автоматически сразу после всего указанного диапазона суммирования? И можно ли как-то используя выражение Shift:=xlToLeft таким образом, что сначала спрессовать обезнуленные значения не к первой колонке, а ко второй? А потом дальше накинуть формулу суммы в первую колонку, а то, что останется справа сделать r.EntireColumn.Delete? Как-то так.. ant6729
Сообщение отредактировал ant6729 - Воскресенье, 19.03.2017, 18:11
Ответить
Сообщение Блин....как бы да...с точки зрения конечного результата - да. Мой код вообще тогда не нужен. Хочу спросить... А где в коде видно, что сумма будет проставляться в колонку G, как у Вас...? Или она ставится автоматически сразу после всего указанного диапазона суммирования? И можно ли как-то используя выражение Shift:=xlToLeft таким образом, что сначала спрессовать обезнуленные значения не к первой колонке, а ко второй? А потом дальше накинуть формулу суммы в первую колонку, а то, что останется справа сделать r.EntireColumn.Delete? Как-то так.. Автор - ant6729 Дата добавления - 19.03.2017 в 18:08
RAN
Дата: Воскресенье, 19.03.2017, 18:29 |
Сообщение № 7
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Или она ставится автоматически
да простых путей не ищем? сначала выкрасить, потом выбросить? можно, конечно, делайте... формулу в коде лучше исправить так [vba]Код
r.Offset(, r.Columns.Count).Resize(, 1).FormulaR1C1 = "=SUM(RC[-" & r.Columns.Count & "]:RC[-1])"
[/vba]
Или она ставится автоматически
да простых путей не ищем? сначала выкрасить, потом выбросить? можно, конечно, делайте... формулу в коде лучше исправить так [vba]Код
r.Offset(, r.Columns.Count).Resize(, 1).FormulaR1C1 = "=SUM(RC[-" & r.Columns.Count & "]:RC[-1])"
[/vba]RAN
Быть или не быть, вот в чем загвоздка!
Ответить
Сообщение Или она ставится автоматически
да простых путей не ищем? сначала выкрасить, потом выбросить? можно, конечно, делайте... формулу в коде лучше исправить так [vba]Код
r.Offset(, r.Columns.Count).Resize(, 1).FormulaR1C1 = "=SUM(RC[-" & r.Columns.Count & "]:RC[-1])"
[/vba]Автор - RAN Дата добавления - 19.03.2017 в 18:29
ant6729
Дата: Воскресенье, 19.03.2017, 19:00 |
Сообщение № 8
Группа: Проверенные
Ранг: Ветеран
Сообщений: 533
Репутация:
2
±
Замечаний:
40% ±
Excel 2010
Да, не ищу...) Думаю, так язык быстрее пойму Спасибо Вам за подсказки)!
Да, не ищу...) Думаю, так язык быстрее пойму Спасибо Вам за подсказки)! ant6729
Ответить
Сообщение Да, не ищу...) Думаю, так язык быстрее пойму Спасибо Вам за подсказки)! Автор - ant6729 Дата добавления - 19.03.2017 в 19:00
ant6729
Дата: Воскресенье, 19.03.2017, 19:16 |
Сообщение № 9
Группа: Проверенные
Ранг: Ветеран
Сообщений: 533
Репутация:
2
±
Замечаний:
40% ±
Excel 2010
Подскажите ещё, а чем последняя формула лучше будет?
Подскажите ещё, а чем последняя формула лучше будет? ant6729
Ответить
Сообщение Подскажите ещё, а чем последняя формула лучше будет? Автор - ant6729 Дата добавления - 19.03.2017 в 19:16
RAN
Дата: Воскресенье, 19.03.2017, 19:30 |
Сообщение № 10
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
удалите/добавьте столбец таблицы, увидите
удалите/добавьте столбец таблицы, увидите RAN
Быть или не быть, вот в чем загвоздка!
Ответить
Сообщение удалите/добавьте столбец таблицы, увидите Автор - RAN Дата добавления - 19.03.2017 в 19:30
ant6729
Дата: Воскресенье, 19.03.2017, 19:41 |
Сообщение № 11
Группа: Проверенные
Ранг: Ветеран
Сообщений: 533
Репутация:
2
±
Замечаний:
40% ±
Excel 2010
Ок, спасибо!
Ответить
Сообщение Ок, спасибо! Автор - ant6729 Дата добавления - 19.03.2017 в 19:41