Необходимо при печати напечатать данные из первого столбца на каждой странице, Необходимо при печати напечатать данные из первого столбца на каждой странице
Предварительная сортировка перед удалением разве даст увеличение скорости удаления строк?
С автором никак не связан. Просто решал подобную задачу и хотел показать нецелесообразность в больших массивах применение примитивного перебора и сравнения в циклах. Если автор пишет, что объем будет более 100 тысяч строк то работа его макроса это чрезвычайно долгий процесс.
Масштабировал файл до 100 тыс. строк. В общем как я и ожидал, циклоперебор - мертвая идея. Запустил на пробу минут 40 назад, до сих пор фильтрация не отработала.
Гораздо веселее вариант через фильтр. Фильтр на 100 тыс. строк отрабатывает 0,3 секунды!!!!!!! Удаление 94184 строк - 90 секунд. Долго, но может есть варианты. Я использовал самый прямой - по записи макроса. Фильтр нужно использовать расширенный. Но в целом в сам макрос от тоже вписывается.
Без претензий к вышенаписанному макросу, но не проще ли строки к удалению выбрать автофильтром? И потом оптом удалить ненужные строки? Тем более в примере автофильтр уже применен (включен).
Всем большое спасибо. Способ предложенный БМВ это фактически и есть то, что я искал. по остальным способам тоже интересно в плане развития. Сразу показывают насколько я чайник
Достаточно простой вопрос. Я думаю программисты с подобным неоднократно сталкиваются.
На листе "Расчет" в ячейке К12 находится сумма. На листе "Сводная" в ячейке C6 ссылка на предыдущее число. То есть
Код
Range("С6").Formula
показывает
Код
"=Расчет!K12"
Макрос бежит по столбцу С листа "Сводная" и натыкается на сумму. Для корректной обработки мне необходимо перейти к ячейке на листе "Расчет" сдвинутьcя на одну ячейку вправо и взять параметр находящийся в ячейке "Сводная!L12". Я могу с помощью текстовых операторов (right, left и др.) разделить Range("С6").Formula на название листа и координаты ячейки. Но не могу сообразить как название и координаты внести в макрос, чтобы он заработал.
Пробую Shteets(N).Activate, где N = "Расчет" - выдает ошибку. С координатами та же ерунда.
Подскажите, как мне туда прыгнуть? Может есть простой путь?
Есть форма1 - Главное меню которая открывает Форму 2,3,4 и т.д.
При выборе кнопки формы 2,3,4 открывается нужный лист. Для возможности его редактирования Форма 1 и Форма 2 переводятся в режим Hide.
После редактирования данных на листе нажимается кнопка при которой лист становится невидимым.
Хочется миниатюрную процедуру 1. Скрыть все формы методом Hide (причем название 1 формы всегда одно и тоже, названия других форм меняются). 2. После скрытия листа открыть все активные формы методом Show
Посоветуйте, что делать?
а то не хочется писать кучу таких процедур для каждой субформы.
Начал изучать работу с формой Наткнулся на такую проблему.
Есть много скрытых листов. Первая форма - главное меню которая вызывает вторую форму.
При нажатии кнопки 2 формы необходимо отобразить лист, и дать возможность в нем внести данные.
Private Sub CommandButton1_Click() Sheets("Лист1").Visible = -1 Sheets("Лист1").Select Range("C5").Select End Sub
На листе есть своя кнопка, которая будет скрыать лист после внесения данных.
Проблема в том что с листом ничего не сделать пока открыты обе формы.
Хотелось бы после внесения данных в лист возвращаться в форму 2.
Надеюсь что понятно сказал :)
Посоветуйте где почитать про работу с формами. Все что нашел очень мало. И еще маленький вопрос. В кнопках формы текст встает в центре кнопки. Есть ли возможность группировать текст по левому краю кнопки? Тоже не нашел как это сделать.
For s = 1 To 15 Н = H + 3 If CheckBox1.Value = "True" Then Range("H" & H).Value = Range("D" & R).Value Range("H" & H + 1).Value = Range("E" & R).Value Range("H" & H + 2).Value = Range("F" & R).Value Else Range("H" & H).Value = 0 Range("H" & H + 1).Value = 0 Range("H" & H + 2).Value = 0 End If Next s
Как мне в цикле указать названия чекбоксов чтобы их номера корректно менялись по параметру S. (3 строка цикла).
Сейчас начал работать в 2007 Excel. Заметил неприятную штуку. Когда проверяешь формулу, т.е. щелкаешь на ней, то происходит подсветка всех адресов и диапазонов. Раньше в старой версии сам лист в таком режиме можно было спокойно крутить колесиком мыши (очень удобно). А сейчас только полосой прокрутки. Т.е. наводишь на полоску мышку и таскаешь курсор прокрутки.
Есть советы и рекомендации по устранению данной проблемы?
{quote}{login=The_Prist}{date=24.09.2010 11:49}{thema=}{post}Я неверно понял. Почти 100%, что у Вас в получившейся формуле присутсвуют знаки, которые там быть не должны. Или наоборот - каких-то не хватает.
Что такое "нов"? Это именованная формула? Тогда где текст этой формулы?{/post}{/quote}
В ячейке excel находится такая формула ="(80,91+0,32*9)*1,1*" & нов отображается как (80,91+0,32*9)*1,1*3,13
необходимо в соседней ячейке выдать результат вычисления
Написал микромакрос: Dim formula As String ActiveCell.Offset(0, -1).Range("A1").Select formula = ActiveCell.FormulaR1C1 ActiveCell.Offset(0, 1).Range("A1").Select formula = Replace(formula, ".", ",") formula = Replace(formula, "=", "") formula = Replace(formula, Chr(34), "") formula = Replace(formula, "&", "") formula = Replace(formula, " ", "") ActiveCell.formula = formula
вставляет текст формулы
получается так (80,91+0,32*9)*1,1*нов
если последнюю строку заменить на ActiveCell.formula = "=" & formula то выдает ошибку 400.