![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 16.12.2009
Сообщений: 26
|
![]()
всем доброго времени суток.
прошу вашей помощи. имеется форма в листе excel. в ней таблица, которая начинается с 16 строки. а заканчивается ... когда как )) но всегда заканчивается строкой, содержащей слово "всего". как подсчитать количество строк в таблице до всего ? прилагаю для наглядности файл с табличкой. заранее спасибо ! |
![]() |
![]() |
![]() |
#2 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
![]()
=МАКС((C1="всего")*СТРОКА(C1))-16
или =МАКС(($A:$A="всего")*СТРОКА($A:$A) )-16
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
![]() |
![]() |
![]() |
#3 |
Участник клуба
Регистрация: 16.05.2010
Сообщений: 1,249
|
![]() Код:
|
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,170
|
![]() Код:
webmoney: E265281470651 Z422237915069 R418926282008
Последний раз редактировалось Hugo121; 18.04.2011 в 20:38. |
![]() |
![]() |
![]() |
#5 | |
Пользователь
Регистрация: 16.12.2009
Сообщений: 26
|
![]() Цитата:
что значит текущий диапазон? к сожалению вывести значение на лист или записать в переменнную не получается. задача в целом следующая: у меня несколько листов и лист свод. вот я в свод макросом переношу эти цели с каждого листа. простым перебором это нельзя сделать так как у всех разное количество целей. соотв-но хотела в макрос вписать функцию по поиску всего, определить кол-во строк, и сделать цикл по переносу данных. я не могу понять как в макросе на листе свод написать формулу ПОИСКПОЗ для всех листов? у меня выдает ошибку (Н/Д) |
|
![]() |
![]() |
![]() |
#6 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,170
|
![]()
Насчёт "текущий диапазон" - это не Вы писали:
MsgBox "В текущем диапазоне " & z & " строк." Я просто взял фразу из Вашего файла. Ну и поиск и перенос (т.е. скорее всего нужно копирование) можно так организовать: Код:
Код:
webmoney: E265281470651 Z422237915069 R418926282008
Последний раз редактировалось Hugo121; 19.04.2011 в 10:35. |
![]() |
![]() |
![]() |
#7 |
Пользователь
Регистрация: 16.12.2009
Сообщений: 26
|
![]()
вот такой пишу макрос и не считает
![]() Sub макрос3() ' ' Application.ScreenUpdating = False: Application.DisplayAlerts = False Application.Calculation = xlCalculationManual 'Set ws = ActiveWorkbook.Worksheets("свод") nm = ActiveSheet.Name ' nm yoi naia i = 0 For Each ws In Worksheets i = i + 1 If ws.Name = nm Then Exit For End If r = 3 Sheets(nm).Cells(1, r).Formula = "=MATCH(""sheets(ws)!всего"",A16:A2 3,)" r = r + 1 Next ws Application.ScreenUpdating = True: Application.DisplayAlerts = True Application.Calculation = xlCalculationAutomatic End Sub диапазон A16 A23 - написан без пробелов, это так здесь разместилось Последний раз редактировалось Екатрина; 19.04.2011 в 10:18. |
![]() |
![]() |
![]() |
#8 |
Участник клуба
Регистрация: 16.05.2010
Сообщений: 1,249
|
![]()
Зачем вставлять функцию листа? Почему не хотите CurrentRegion?
|
![]() |
![]() |
![]() |
#9 |
Пользователь
Регистрация: 16.12.2009
Сообщений: 26
|
![]()
задача в целом следующая:
у меня несколько листов с целями и лист свод. вот я в свод макросом переношу эти цели с каждого листа. простым перебором это нельзя сделать, так как на всех листах разное количество целей. соотв-но хотела в макрос вписать функцию по поиску всего, определить кол-во строк с целями, и сделать цикл по переносу данных. я не понимаю, как я могу применить currentregion в принципе, тк я не знаю как он работает при моей проблеме. и синтаксиса его не знаю. в общем стараюсь решить так, как могу ![]() а насколько я понимаю, currentregion - только для выделенного диапазона. а у меня такого не имеется. листов несколько и активный лист - лист свод |
![]() |
![]() |
![]() |
#10 |
Участник клуба
Регистрация: 16.05.2010
Сообщений: 1,249
|
![]()
Придут знатоки, объяснят более подробно.
Hugo121 предложил: [a16].CurrentRegion.Rows.Count Относительно [a16]. Весь диапазон. Строки.Количество, т.е. количество строк заполненного диапазона. А функции листа в макросе работают медленно. |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
подсчет в таблице | Deni55 | Microsoft Office Excel | 7 | 25.05.2011 14:10 |
Макрос на сравнение и подсчет в первом столбце строк, и сумирование значений этих строк в другом столбце | Shpr0T | Microsoft Office Excel | 8 | 30.08.2010 17:52 |
Подсчет результатов в турнирной таблице. | vladi | Microsoft Office Excel | 5 | 29.06.2010 13:45 |
Подсчет количества совпадений в таблице | aval | Microsoft Office Excel | 8 | 08.11.2009 21:50 |
Подсчет полей в таблице | Arkatic | Общие вопросы C/C++ | 0 | 10.05.2009 22:52 |