Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Страницы: 1 2 След.
RSS
Оптимизация кода (ради спорта) :)
 
ВСЕМ БОЛЬШОЕ ЗДРАВСТВУЙТЕ!  
Смастерил только-что маленький код, все работает.  
Если можно что-нибудь подправить, подправьте, пожалуйста, укажите на ошибки.  
 
Sub NovZapis()  
 
Dim iLastRow As Long  
 
Application.ScreenUpdating = False  
iLastRow = Cells(Rows.Count, 6).End(xlUp).Row  
Cells(iLastRow, 1).EntireRow.Copy  
Cells(iLastRow + 1, 1).EntireRow.Select  
   Selection.Insert Shift = xlDown  
   Selection.ClearContents    
Cells(iLastRow + 1, 1).FormulaR1C1 = "=MAX(R2C1:R[-1]C1)+1"
Cells(iLastRow + 1, 2).FormulaR1C1 = 1  
Cells(iLastRow + 1, 3).FormulaR1C1 = 1  
Cells(iLastRow + 1, 4).FormulaR1C1 = "=MAX(R2C4:R[-1]C4)+1"
Cells(iLastRow + 1, 5).FormulaR1C1 = 1  
Cells(iLastRow + 1, 6).FormulaR1C1 = "=R[-1]C6"
   
    Cells(iLastRow + 1, 1).EntireRow.Select  
    Selection.Copy  
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _  
       :=False, Transpose:=False  
 
Cells(iLastRow + 1, 7).Select  
Application.CutCopyMode = False  
Application.ScreenUpdating = True  
End Sub  
 
СПАСИБО!  
С ув. Vovan/
 
Ну а если так упростить макрос?  
 
Sub NovZapis()  
   Range("f" & Rows.Count).End(xlUp).EntireRow.Resize(2).FillDown  
End Sub
 
Я не разбираюсь в макросах, но сравнив внешне - EducatedFool тянет на мастера спорта :)
 
По моему даже чемпиона мира..  
а что означают загадочные слова    
Resize(2).FillDown  
????
 
{quote}{login=Микки}{date=23.10.2009 10:08}{thema=}{post}  
а что означают загадочные слова    
Resize(2).FillDown  
????{/post}{/quote}  
 
Берем последнюю заполненную строку, расширяем выделение на 2 строки (последняя заполненная + первая пустая), и даём команду ЗАПОЛНИТЬ ВНИЗ.  
 
Равносильно выделению последней заполненной строки, и растягиванию её вниз ещё на одну строку.
 
У автора, в столбцах А и D идет нарастание, а в упрощенной схеме только копирование предыдущей строки.
 
У Игоря67 есть брат? :)
 
{quote}{login=vikttur}{date=23.10.2009 10:35}{thema=}{post}У Игоря67 есть брат? :){/post}{/quote}  
 
И видимо на 4 года старше :-)
 
Не просто Игоря63 протянули на 4 строки вниз
 
{quote}{login=Игорь_63}{date=23.10.2009 10:30}{thema=}{post}У автора, в столбцах А и D идет нарастание, а в упрощенной схеме только копирование предыдущей строки.{/post}{/quote}  
 
Неужели?  
А у меня значения в этих столбцах увеличиваются...  
 
Конечно, у предложенного мной варианта есть некоторые недостатки (перечислять их долго), но вдруг топикстартера устроит предложенный код...
 
Ну добавьте приращение:  
 
Sub NovZapis()  
Range("f" & Rows.Count).End(xlUp).EntireRow.Resize(2).FillDown  
Cells(ActiveCell.Row, 1).Offset(1, 0).Value = Cells(ActiveCell.Row, 1).Value + 1  
Cells(ActiveCell.Row, 4).Offset(1, 0).Value = Cells(ActiveCell.Row, 4).Value + 1  
End Sub  
 
Правда, по честному необходима проверка - число ли в ячейке.
 
{quote}{login=Serge 007}{date=23.10.2009 10:38}{thema=Re: }{post}{quote}{login=vikttur}{date=23.10.2009 10:35}{thema=}{post}У Игоря67 есть брат? :){/post}{/quote}  
 
И видимо на 4 года старше :-){/post}{/quote}  
Если у Игоря67, 67 означает год рождения, то я младше и по воле случая именно на 4 года :))  
Прошу прощения за офф.
 
{quote}{login=The_Prist}{date=23.10.2009 12:16}{thema=Re: Re: Re: }{post}{quote}{login=Игорь_63}{date=23.10.2009 12:09}{thema=Re: Re: }{post}Если у Игоря67, 67 означает год рождения, то я младше и по воле случая именно на 4 года :)){/post}{/quote}Это по каким расчетам? Т.е. если кто-то родился сегодня, то он младше того, кто родится завтра? :-)  
2009 - 1967 = 42  
2009 - 1963 = 46{/post}{/quote}  
 
Видимо у Игорь_63 - 63 значит что-то другое ;)
 
{quote}{login=The_Prist}{date=23.10.2009 01:03}{thema=Re: Re: Re: Re: Re: }{post}{quote}{login=Serge 007}{date=23.10.2009 12:56}{thema=Re: Re: Re: Re: }{post}Видимо у Игорь_63 - 63 значит что-то другое ;){/post}{/quote}Но что? {/post}{/quote}  
Ну, это может быть что угодно: Регион, любимое число, день рождения (6-е марта или 3-е июня), последние цифры номера телефона и т.д.  
Может Игорь_63 сам пояснит, если мы его прайваси не нарушаем? :-)
 
Как-то давно у Игоря67 спросили здесь, на форуме, не год ли это его рождения, а он ответил, что это не год, а номер его квартиры.
 
{quote}{login=Бухг}{date=23.10.2009 01:10}{thema=}{post}Как-то давно у Игоря67 спросили здесь, на форуме, не год ли это его рождения, а он ответил, что это не год, а номер его квартиры.{/post}{/quote}  
 
Опа...  
Спасибо Ольга, а то мы здесь такого нафантазируем :-)
 
Значит, Игорь_63 живет этажом ниже Игоря67 :).
 
{quote}{login=Михаил}{date=23.10.2009 01:33}{thema=}{post}Значит, Игорь_63 живет этажом ниже Игоря67 :).{/post}{/quote}  
 
Я бы даже сказал 4-я этажами ниже :-)
 
Serge 007, угадал, 63 это регион - Самара.
 
Интересно бы составить карту форума, здесь один товарищ даже из Исландии объявлялся, а KL - из Испании...
 
Вот нет сегодня нормального оффтопа ... все тут теперь.  
Эх Самара городок девки стройные в рядок.  
Да иинтересно может теперь географию форумчан спросить?  
Кто за ?  
Боюсь Москва победит ..  
Кстати Сергей (07) не регион я так понял мой кровный враг по спорту.
 
{quote}{login=Бухг}{date=23.10.2009 01:51}{thema=}{post}Интересно бы составить карту форума, здесь один товарищ даже из Исландии объявлялся, а KL - из Испании...{/post}{/quote}  
Ольга на минуту обогнала...  
Открывайте тему Вам ответят все. Мы же все любим бухгалтеров.
 
Микки, дорогой, м.б. Вы откроете, ладно?    
У Вас и опыт есть. Я стесняюсь. Честно.    
Вы все такие умные и так много знаете по Экселю и вообще..., а я -  "...и примкнувший к ним Шипилов!"  
Я, правда, не могу. Когда-нибудь, когда подучу Эксель (если успею!) я, прям, буду всякие темы открывать!  
А географию форума было бы здорово узнать, хотя бы для статистики.
 
{quote}{login=Бухг}{date=23.10.2009 02:02}{thema=}{post}Микки, дорогой, м.б. Вы откроете, ладно?    
У Вас и опыт есть. Я стесняюсь. Честно.    
Вы все такие умные и так много знаете по Экселю и вообще..., а я -  "...и примкнувший к ним Шипилов!"  
Я, правда, не могу. Когда-нибудь, когда подучу Эксель (если успею!) я, прям, буду всякие темы открывать!  
А географию форума было бы здорово узнать, хотя бы для статистики.{/post}{/quote}  
Попробую если модеры не побьют...  
А это Вы откуда цитируете ...  а я - "...и примкнувший к ним Шипилов!"  
Из постановлений партии или из песен?
 
Микки, разумеется из Постановления об антипартийной группировке Молотова, Маленкова, Кагановича. Там-то как раз и был упомянут "... и примкнувший к ним Шипилов"!
 
{quote}{login=Микки}{date=23.10.2009 01:52}{thema=}{post}Вот нет сегодня нормального оффтопа ... все тут теперь.  
Эх Самара городок девки стройные в рядок.  
Да иинтересно может теперь географию форумчан спросить?  
Кто за ?  
Боюсь Москва победит ..  
 
Кстати Сергей (07) не регион я так понял мой кровный враг по спорту.  
 
Нет, не регион :) Тайну могу открыть ;) Я очень давно слушаю тяжёлую музыку, от модной ныне альтернативы, до зубодробительного трэша (сам поигрывал ранее). Есть несколько наиболее предпочтительных групп и исполнителей. Когда я выбирал ник, то с первой частью проблем не было (я почти на всех форумах Serge, кроме одного, там под псевдонимом "Полковник МВД"), а вот со второй частью...Я думал о "Serge?", что бы выглядело как почитаемая мной ирландская группа Therapy?, но решил что так общаться будет неудобно, вспомните ник "Я учусь",  и вспомнил о группе Soundgarden, популярной в начале 90-х, об их солисте Chris Cornell, о песне "You know my name", которую он исполняет в саундтреке к фильму Casino Royale...Тьфу, запутался "в которых" ... Короче и фильм и музыка мне нравятся, а так как фильм про Бонда, я и решил "прихватизировать" его два нуля+моё любимое число.Вот!  
 
Интересно, а почему именно Микки? Кровный враг по спорту - это жесть:-)  
{/post}{/quote}  
 
Андрей Хр пишет из Ирландии...
 
... я только что столько наваял, а оно что-то на записалось...
 
{quote}{login=Vovan}{date=23.10.2009 02:28}{thema=}{post}... я только что столько наваял, а оно что-то на записалось...{/post}{/quote}  
 
Vovan, если пишешь "Оперу" , обязательно перед отправкой Ctrl+A, Ctrl+C.  
Или в нотпаде пиши, потом на форум копируй.  
Код действует ограниченное кол-во времени...
 
Во, заработало!!!!!  
Повторюсь.  
Пока тут ваял ответ, успел грамм 200 накатить за любимых бухгалтеров, вот!  
На стчет примера:  
1. Вот это возьму на вооружение  
Resize(2).FillDown  
Спасибо!  
2. Вот тут что то не то    
Sub NovZapis()  
Range("f" & Rows.Count).End(xlUp).EntireRow.Resize(2).FillDown  
Cells(ActiveCell.Row, 1).Offset(1, 0).Value = Cells(ActiveCell.Row, 1).Value + 1  
Cells(ActiveCell.Row, 4).Offset(1, 0).Value = Cells(ActiveCell.Row, 4).Value + 1  
End Sub  
- не соответствует моему примеру.  
3. В общем так: в конец таблицы вставляю пустую строку со всеми форматированиями свыше, по столбцам A, D прописывается макс. знач всего, что выше по столбцу, по B,C,E - ставлю 1, по F - значение, что выше.  
Вот так.  
С ув Vovan!
 
{quote}{login=Serge 007}{date=23.10.2009 02:34}{thema=Re: }{post}{quote}{login=Vovan}{date=23.10.2009 02:28}{thema=}{post}... я только что столько наваял, а оно что-то на записалось...{/post}{/quote}  
 
Vovan, если пишешь "Оперу" , обязательно перед отправкой Ctrl+A, Ctrl+C.  
Или в нотпаде пиши, потом на форум копируй.  
Код действует ограниченное кол-во времени...{/post}{/quote}  
В таком случае, какой браузер посоветуете?
Страницы: 1 2 След.
Читают тему (гостей: 1)
Наверх