Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.04.2016, 14:15   #1
Pilot1214
Новичок
Джуниор
 
Регистрация: 02.04.2016
Сообщений: 1
Печаль Проблема с записью условия

Здравствуйте уважаемые Про!
На своей работе мне приходиться обрабатывать данные в Excel по одному и тому же шаблону. Узнав про макросы решил им воспользоваться, т.к. он реально сэкономил бы мне время, но столкнулся с проблемой. Если записать в макрос просто мои действия и потом применять его к другим файлам работает не корректно. Мне необходимо вставить условие, если программа находит в столбце наименьшее отрицательное число, то только тогда начинает применять шаблон:
Sub Макрос1()
' Макрос1 Макрос

ActiveWindow.SmallScroll Down:=102
Range("C119").Select
ActiveCell.FormulaR1C1 = "=360+RC[-1]"
Range("C119").Select
Selection.AutoFill Destination:=Range("C119:C158"), Type:=xlFillDefault
Range("C119:C158").Select
ActiveWindow.SmallScroll Down:=-24
Selection.Copy
Range("B119").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Columns("C:C").Select
Range("C112").Activate
Application.CutCopyMode = False
Selection.ClearContents
Range("A119:B272").Select
Selection.Copy
ActiveWindow.ScrollRow = 245
ActiveWindow.ScrollRow = 244
ActiveWindow.ScrollRow = 243
.
.
.
ActiveWindow.ScrollRow = 1
Range("C1").Select
ActiveSheet.Paste
Columns("A:B").Select
Application.CutCopyMode = False
Selection.Delete Shift:=xlToLeft
Range("G13").Select
End Sub
Как должно выглядеть это условие и куда именно необходимо его вставить в этом макросе и можно ли как то его еще упростить?
Pilot1214 вне форума Ответить с цитированием
Старый 02.04.2016, 14:48   #2
kuklp
Участник клуба
 
Регистрация: 02.05.2010
Сообщений: 1,390
По умолчанию

Цитата:
Сообщение от Pilot1214 Посмотреть сообщение
Мне необходимо вставить... и куда именно необходимо его вставить...
Гусары молчать! По теме - лучше покажите это в файле.
mailto: kuklp60@gmail.com, ящики для благодарностей:
WM Z206653985942, R334086032478, U238399322728
kuklp вне форума Ответить с цитированием
Старый 03.04.2016, 12:34   #3
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

Цитата:
...если программа находит в столбце наименьшее отрицательное число, то только тогда начинает применять...
1. начиная с Excel 2007 на листе более 16 тыс.столбцов, в каком из этих 16 тысяч.? даже если сейчас Вы смотрите на нужный столбец со всей силы и прямо в упор, я хрен угадаю на что вы сейчас смотрите
2. "наименьшее отрицательное число" - это какое по величине? Вам удалось найти наименьшее отрицательное число? понимаете, какое бы маленькое отрицательное число Вы мне не назвали, я умножу его на 2 и получу число в 2 раза меньше названого Вами.
понимаете, если в столбце есть хоть ОДНО отрицательное число - оно и будет наименьшим для данного столбца
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 03.04.2016, 12:42   #4
mchip
Форумчанин
 
Регистрация: 24.06.2008
Сообщений: 516
По умолчанию

-5*2=10 !!!
Можно сделать все! Было бы время, да деньги...
mchip вне форума Ответить с цитированием
Старый 03.04.2016, 12:50   #5
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

опа!
а я всегда считал, что -5*2 = -10
и был уверен что -10 меньше чем -5, причем ровно в 2 раза.
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 03.04.2016, 12:53   #6
mchip
Форумчанин
 
Регистрация: 24.06.2008
Сообщений: 516
По умолчанию

)) да, туплю....
Можно сделать все! Было бы время, да деньги...
mchip вне форума Ответить с цитированием
Старый 03.04.2016, 13:16   #7
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

mchip, нормально все!
на подсознательном уровне: умножить что-то на 2 - это получить бОльшее значение

когда поезд плавно трогается в путь, а мы сидим в этот момент в состоянии покоя бездумно втыкаем в окно, только умом можно убедить себя что тронулся поезд, а не перон, а обратный вывод нам уже успело подсказать подсознание еще до того, как случившееся было обработано мозгом.
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с записью RussDragon PHP 3 07.06.2012 16:21
Проблема с записью Zuba C++ Builder 10 05.05.2012 22:38
проблема с записью в файл -=Andriushka=- Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 2 31.12.2011 21:49
Проблема с записью в StringGrid novichok1 Общие вопросы Delphi 2 22.01.2011 19:25
Проблема с записью на CD pavel42 Компьютерное железо 2 24.09.2009 16:33