Настройка для экселя ускорения работы. Ускоряем работу в Excel: полезные советы, функции, быстрые клавиши

25.02.2019

Вмещается 32 767 знаков. Поэтому функция быстрого изменения ширины столбца по его содержимому не всегда удобна. :) Хотя в большинстве случаев она выручает. Наведите курсор мыши на правую границу заголовка столбца и дважды кликните по ней, чтобы программа подобрала оптимальную ширину столбца. Этот трюк работает и для нескольких столбцов, а также для всего листа.

2. Как быстро выделить всю строку или столбец

При работе с большими объёмами данных невозможно обойтись без клавиатурных сокращений, с помощью которых легко перемещаться по листу и выделять отдельные столбцы или строки. Комбинации Ctrl + Spacebar и Shift + Spacebar как раз и отвечают за быстрое выделение текущего столбца или строки.

Однажды я наблюдал, как четырёхлетний использовал горячие клавиши копирования и вставки для ввода ключа к игре. Похоже, неразлучная троица Ctrl + C , Ctrl + V и Ctrl + A впитывается молодым поколением вместе с молоком матери. К слову, команда «Выделить всё» в Excel имеет небольшую особенность: одиночное нажатие Ctrl + A выделяет текущий диапазон, а двойное - таблицу целиком.

4. Как внести изменения на нескольких листах одновременно

Пареная репа, твой выход! К примеру, чтобы поменять размер шрифта сразу на всех листах, необходимо собрать их в группу с помощью щелчков мышью по закладкам листов, удерживая клавишу Ctrl.

5. Как перенести строку в текущей ячейке

Хочешь поиздеваться над новичком в - попроси его вписать данные внутри ячейки в несколько строк. Конечно, школьный трюк, но со старшим поколением работает на ура. Комбинация Alt + Enter предотвращает переход к другой ячейке и переводит курсор на новую строку в пределах текущей ячейки.

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

7. Как быстро вставить текущую дату

Судя по всему, горячие клавиши Ctrl + ; и Ctrl + Shift + ; нужно крутить по радио вместо утреннего гимна. Эти комбинации стоит повторять до той поры, пока на планете не останется того трудяги, который вбивает дату и время вручную.

Павлов Николай

В этой статье мне хотелось бы представить вам самые эффективные приемы работы в Microsoft Excel, собранные мной за последние 10 лет работы над проектами и проведения тренингов по этой замечательной программе. Здесь нет описания суперсложных технологий, но есть приемы на каждый день - простые и эффективные, описанные без "воды" - только "сухой остаток". На освоение большинства из этих примеров у вас уйдет не более одной-двух минут, а вот сэкономить они вам помогут гораздо больше.

Быстрый переход к нужному листу

Случается ли вам работать с книгами Excel, состоящими из большого количества листов? Если их больше десятка, то каждый переход к очередному нужному листу сам по себе становится маленькой проблемой. Простое и элегантное решение такой задачи - щелкнуть в левом нижнем углу окна по кнопкам прокрутки ярлычков листов не левой, а правой кнопкой мыши - появится оглавление книги с полным списком всех листов и на нужный лист можно будет перейти в одно движение:

Это намного быстрее, чем прокручивать ярлычки листов этими же кнопками в поисках нужного.


Копирование без повреждения форматирования

Сколько сотен (тысяч?) раз я видел эту картину, стоя за спиной своих слушателей во время тренингов: пользователь вводит формулу в первую ячейку затем и "протягивает" ее на весь столбец, нарушая форматирование нижерасположенных строк, поскольку такой способ копирует не только формулу, но и формат ячейки. Соответственно, дальше приходится вручную исправлять повреждения. Секунда на копирование и потом 30 - на починку испорченного копированием дизайна.

Начиная с Excel 2002, есть решение этой проблемы - простое и изящное. Сразу после копирования (протаскивания) формулы на весь столбец, нужно воспользоваться смарт-тегом - небольшим значком, который временно появляется в правом нижнем углу диапазона. Нажатие на него выведет список возможных вариантов копирования, где и можно выбрать Копировать только значения (Fill without formatting). В этом случае формулы копируются, а форматирование - нет:


Копирование только видимых ячеек

Если вы работаете в Microsoft Excel больше недели, то должны были уже сталкиваться с подобной проблемой: в некоторых случаях при копировании-вставке ячеек их вставляется больше, чем было, на первый взгляд, скопировано. Это может происходить, если копируемый диапазон включал в себя скрытые строки/столбцы, группировки, промежуточные итоги или фильтрацию. Рассмотрим в качестве примера один из таких случаев:

В этой таблице посчитаны промежуточные итоги и сделана группировка строк по городам - это легко понять по кнопкам "плюс-минус" слева от таблицы и по разрывам в нумерации видимых строк. Если выделить, скопировать и вставить данные из этой таблицы обычным способом, то мы получим 24 лишних строки. Нам же хочется скопировать и вставить только итоги!

Можно решить проблему, кропотливо выделяя каждую строку итогов и удерживая при этом клавишу CTRL - как для выделения несмежных диапазонов. Но если таких строк не три-пять, а несколько сотен или тысяч? Есть другой, более быстрый и удобный путь:

Выделите копируемый диапазон (в нашем примере - это A1:C29)

Нажмите на клавиатуре клавишу F5 и затем кнопку Выделить (Special) в открывшемся окне.
Появится окно, позволяющее пользователю выделять не все подряд, а только нужные ячейки:

В этом окне выберите опцию Только видимые ячейки (Visible cells only) и нажмите ОК.

Полученное выделение теперь можно смело копировать и вставлять. В результате мы получим копию именно видимых ячеек и вставим вместо ненужных 29-ти только необходимые нам 5 строк.

Если есть подозрение, что подобную операцию вам придется проделывать часто, то имеет смысл добавить на панель инструментов Microsoft Excel кнопку для быстрого вызова такой функции. Это можно сделать через меню Сервис>Настройка (Tools> Customize), затем перейти на вкладку Команды (Commands), в категории Правка (Edit) найти кнопку Выделить видимые ячейки (Select visible cells) и перенести ее мышью на панель инструментов:


Превращение строк в столбцы и обратно

Простая операция, но если не знать как сделать ее правильно - можно потратить полдня на перетаскивание отдельных ячеек вручную:

На самом деле все просто. В той части высшей математики, которая описывает матрицы есть понятие транспонирования - действия, которое меняет строки и столбцы в матрице местами друг с другом. В Microsoft Excel это реализуется в три движения: Копируем таблицу

Щелкаем правой кнопкой мыши по пустой ячейке и выбираем команду Специальная вставка (Paste Special)

В открывшемся окне ставим флаг Транспонировать (Transpose) и жмем ОК:


Быстрое добавление данных в диаграмму

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

Другой путь - простой, быстрый и красивый - выделить ячейки с новыми данными, скопировать их (CTRL+C) и вставить (CTRL+V) прямо в диаграмму. Excel 2003, в отличие от более поздних версий, поддерживает даже возможность перетаскивания выделенного диапазона ячеек с данными и забрасывания его прямо в диаграмму с помощью мыши!

Если хочется контролировать все нюансы и тонкости, то можно использовать не обычную, а специальную вставку, выбрав в меню Правка>Специальная вставка (Edit> Paste Special). В этом случае Microsoft Excel отобразит диалоговое окно, позволяющее настроить куда и как именно будут добавлены новые данные:

Подобным же образом можно легко создать диаграмму, используя данные из разных таблиц с разных листов. На выполнение той же задачи классическим способом уйдет гораздо больше времени и сил.


Заполнение пустых ячеек

После выгрузки отчетов из некоторых программ в формат Excel или при создании сводных таблиц пользователи часто получают таблицы с пустыми ячейками в некоторых столбцах. Эти пропуски не позволяют применять к таблицами привычные и удобные инструменты типа автофильтра и сортировки. Естественным образом возникает необходимость заполнить пустоты значениями из вышестоящих ячеек:

Безусловно, при небольшом количестве данных, это легко можно сделать простым копированием - вручную протянув каждую заглавную ячейку в столбце А вниз на пустые ячейки. А если в таблице несколько сотен или тысяч строк и несколько десятков городов?

Есть способ решить эту задачу быстро и красиво при помощи одной формулы:

Выделите все ячейки в столбце с пустотами (т.е. диапазон A1:A12 в нашем случае)

Чтобы в выделении остались только пустые ячейки, нажмите клавишу F5 и в открывшемся окне переходов - кнопку Выделить. Увидите окно, позволяющее выбрать - какие именно ячейки мы хотим выделить:

Установите переключатель в положение Пустые (Blank) и нажмите ОК. Теперь в выделении должны остаться только пустые ячейки:

Не меняя выделения, т.е. не трогая мышь, введем формулу в первую выделенную ячейку (А2). Нажмите на клавиатуре на знак "равно" и затем на "стрелку вверх". Получим формулу, которая ссылается на предыдущую ячейку:

Чтобы ввести созданную формулу сразу во все выделенные пустые ячейки, нажмите не клавишу ENTER, а сочетание CTRL+ ENTER. Формула заполнит все пустые ячейки:

Теперь осталось только заменить формулы на значения для фиксации результатов. Выделите диапазон A1:A12, скопируйте его и вставьте в ячейки их значения, используя специальную вставку.


Выпадающий список в ячейке

Прием, который, без преувеличения, должен знать каждый, кто работает в Excel. Его применение способно улучшить, практически, любую таблицу вне зависимости от ее назначения. На всех тренингах я стараюсь показать его своим слушателям в первый же день.

Идея очень проста - во всех случаях, когда вы должны ввести данные из какого-либо набора, вместо ручного ввода в ячейку с клавиатуры выбирать нужное значение мышью из выпадающего списка:

Выбор товара из прайс-листа, имени клиента из клиентской базы, ФИО сотрудника из штатного расписания и т.д. Вариантов применения этой функции множество.

Чтобы создать выпадающий список в ячейке:

Выделите ячейки, в которых вы хотите создать выпадающий список.

Если у вас Excel 2003 или старше, то выберите в меню Данные>Проверка (Data>Validation). Если у вас Excel 2007/2010, то перейдите на вкладку Данные (Data) и нажмите кнопку Проверка данных (Data validation).

В открывшемся окне выберите вариант Список (List) из раскрывающегося списка.

В поле Источник (Source) надо указать значения, которые должны быть в списке. Тут возможны варианты:

Вписать в это поле текстовые варианты через точку с запятой

Если диапазон ячеек с исходными значениями находится на текущем листе - достаточно его просто выделить мышью.

Если он находится на другом листе этой книги, то ему придется заранее дать имя (выделить ячейки, нажать CTRL+F3, ввести имя диапазона без пробелов), а затем прописать это имя в поле

Долгое открытие файлов Excel может возникать из-за:

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

Избавляемся от тормозов в Excel

Наличие огромного количества форматирования существенно тормозит работу Excel
Представьте себе таблицу 65000 строк и 50 столбцов. У каждой ячейки отличаются цвета, уникальный шрифт и размер текста. Как думаете, будет по такому файлу курсор перемещаться шустро? Если у вас не MainFrame, то вряд ли.
Старайтесь оформлять только то, что нужно оформить. Не применяйте форматирование ко всему столбцу или строке, если можно выделить только необходимое количество ячеек. Ну а если попался такой "форматированный" файл, то в Excel есть замечательная кнопка - Очистить Форматы

Тормозить Excel может и из-за проблем с принтером
А точнее, если не подключен тот принтер, который в редакторе выбран по-умолчанию. Но эта проблема характерна для Экселя 2007 и старше. При этом запуск файла происходит очень медленно. Исправляется это выбором нового работающего принтера или включением не работающего. Или установкой по-умолчанию виртуального принтера "Microsoft XPS Document Writer"

Наличие скрытых объектов
Скрытые объекты могут попасть в таблицу в результате копирования данных из другого файла. Причем объект переносится с нулевыми размерами, из-за чего, при выделении его не видно. При большом их количестве, это может существенно затормозить работу.
Открываем проблемный файл и убеждаемся, что можем найти и выделить скрытые объекты. Для этого нажимаем Alt+F11, откроется редактор Microsoft Visual Basic. Нажимаем F4, в выпадающем списке выбираем ЭтаКнига Workbook и в поле DisplayDrawingObjects ставим значение -4104 -xlDisplayShapes. Далее, на Листе Экселя выполняем Главная - Найти и выделить - Выделение группы ячеек - Объекты, нажимаем ОК и потом клавишу Delete. Естественно, лучше сделать копию файла и потренироваться на нем.

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

И так же на этот выделенный диапазон щелкаете ПКМ, выбираете Специальная вставка и указываете Значения. Таким образом, уменьшается количество формул, по которым Excel должен проводить расчеты.

Так же не забывайте использовать более быстрые формулы:
Используйте ЕСЛИОШИБКА, она отрабатывает быстрее комбинации ЕСЛИ + ЕОШ
Используйте -- для конвертации логических значений в ноли и единицы.
Предпочтительней использовать комбинацию ИНДЕКС + ПОИСКПОЗ вместо ВПР
МАКС(А1;0) работает быстрее ЕСЛИ(А1>0;A1;0)

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

Если документ сохранен в формате xlsx или xls, то можно сохранить его в формат xlsb. И скорость, с какой будет открываться файл, приятно удивит. Увеличение скорости достигается за счет того, что все данные в этом файле сохраняются в бинарном формате, более "родном" для Excel, который требует меньше ресурсов для разбора и преобразования документа. Плюс ко всему этому, размер файла станет меньше.

Опять же, если документ сохранен в формате xlsx и долго открывается, можно открыть его с помощью любого архиватора (например winrar) и поудалять папки revisions и worksheets. Первая хранит все изменения, при включенном режиме Общий доступ. Вторая папка содержит изображения. Данные операции проводите на копии файла. Кстати, если в документе имеются изображения, не забывайте их сжимать. Делается это через вкладку Формат - группа Изменить - Сжатие рисунков и указать предпочтительное качество. Поможет уменьшить размеры изображений, что положительно отразится на размере файла.

Медленно запускаться файл может в Excel 2003 и 2007, если документ открывается с сетевого ресурса. Но при копировании на локальный компьютер - запуск происходит быстро. Лечится это созданием отсутствующих разделов и добавлением значения:
HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\12.0\Excel\Security\FileValidation (для 2007)
HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\11.0\Excel\Security\FileValidation (для 2003)
Enableonload=dword:00000000
Данный параметр отключает функцию Office File Validation, которая отвечает за проверку двоичного формата файла и проверяет, соответствуют ли он формату файла MS Office.

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

Надеюсь, после всех манипуляций, файл у вас больше не будет долго открываться, а Excel не будет тормозить при запуске.
И ниже, очень интересное и подробное видео с комментариями, как ускорить работу Excel

Условное форматирование (5)
Списки и диапазоны (5)
Макросы(VBA процедуры) (63)
Разное (39)
Баги и глюки Excel (3)

Как ускорить и оптимизировать код VBA


Рано или поздно у пишущих на Visual Basic for Applications возникает проблема - код хоть и облегчает жизнь и делает все автоматически, но очень долго. В этой статье я решил собрать несколько простых рекомендаций, которые помогут ускорить работу кода VBA, при этом в некоторых случаях весьма внушительно - в десятки, а то и больше, раз. Основной упор в статье сделан на начинающих, поэтому в начале статьи приводятся самые простые методы оптимизации. Более "глубокие" решения по оптимизации кода приведены в конце статьи, т.к. для применения данных решений необходим достаточный опыт работы в VB и сходу такие методы оптимизации кому-то могут быть непонятны.

  1. Если в коде есть много всяких Activate и Select , тем более в циклах - следует немедленно от них избавиться. Как это сделать я писал в статье: Select и Activate - зачем нужны и нужны ли?
  2. Обязательно на время выполнения кода отключить:
    • автоматический пересчет формул. Чтобы формулы не пересчитывались при каждой манипуляции на листе во время выполнения кода - это может дико тормозить код, если формул много:

      Application.ScreenUpdating = False

    • На всякий случай отключаем отслеживание событий. Нужно для того, чтобы Excel не выполнял никаких событийных процедур, которые могут быть в листе, в котором производятся изменения. Как правило это события изменения ячеек, активации листов и пр.:

      ActiveWorkbook.ActiveSheet.DisplayPageBreaks = False

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

    • На всякий случай можно отключить отображение информации в строке статуса Excel (в каких случаях там вообще отображается информация и зачем можно узнать в статье: Отобразить процесс выполнения). Хоть это и не сильно поедает ресурсы - иногда может все же ускорить работу кода:
      Application.StatusBar = False

      Application.StatusBar = False

    Главное, что следует помнить - все эти свойства необходимо включить обратно после работы кода . Иначе могут быть проблемы с работой внутри Excel. Например, если забыть включить автопересчет формул - большинство формул будут пересчитывать исключительно принудительным методом - Shift +F9 . А если забыть отключить обновление экрана - то есть шанс заблокировать себе возможность работы на листах и книгах. Хотя по умолчанию свойство ScreenUpdating и должно возвращаться в True, если было отключено внутри процедуры - лучше не надеяться на это и привыкать возвращать все свойства на свои места принудительно. По сути все это сведется к нескольким строкам:

    "Возвращаем обновление экрана Application.ScreenUpdating = True "Возвращаем автопересчет формул Application.Calculation = xlCalculationAutomatic "Включаем отслеживание событий Application.EnableEvents = True

    Как такой код выглядит на практике. Предположим, надо записать в цикле в 10 000 строк значения:

    Sub TestOptimize() "отключаем обновление экрана Application.ScreenUpdating = False "Отключаем автопересчет формул Application.Calculation = xlCalculationManual "Отключаем отслеживание событий Application.EnableEvents = False "Отключаем разбиение на печатные страницы ActiveWorkbook.ActiveSheet.DisplayPageBreaks = False "Непосредственно код заполнения ячеек Dim lr As Long For lr = 1 To 10000 Cells(lr, 1).Value = lr "для примера просто пронумеруем строки Next "Возвращаем обновление экрана Application.ScreenUpdating = True "Возвращаем автопересчет формул Application.Calculation = xlCalculationAutomatic "Включаем отслеживание событий Application.EnableEvents = True End Sub

    Разрывы печатных страниц можно не возвращать - они тормозят работу в любом случае.

  3. Следует избегать циклов, вроде Do While для поиска последней ячейки. Часто такую ошибку совершают начинающие. Куда эффективнее и быстрее вычислять последнюю ячейку на всем листе или в конкретном столбце без этого тормозного цикла Do While. Я обычно использую
    lLastRow = Cells(Rows.Count,1).End (xlUp).Row

    lLastRow = Cells(Rows.Count,1).End(xlUp).Row

    другие варианты определения последней ячейки я детально описывал в статье:

Для более опытных пользователей VBA я приведу несколько решений по оптимизации кодов в различных ситуациях:

  • Самая хорошая оптимизация кода, если приходится работать с ячейками листа напрямую, обрабатывать их и, возможно, изменять значения, то быстрее все обработки делать в массиве и разом выгружать на листе. Например, код выше по заполнению ячеек номерами будет в этом случае выглядеть так:
    Sub TestOptimize_Array() "Непосредственно код заполнения ячеек Dim arr, lr As Long "запоминаем в массив одним махом все значения 10000 строк первого столбца arr = Cells(1, 1).Resize(10000).Value "если нужно заполнение для двух и более столбцов "arr = Cells(1, 1).Resize(10000, 2).Value "или "arr = Range(Cells(1, 1),Cells(10000, 2)).Value "или автоматически вычисляем последнюю ячейку и заносим в массив данные, начиная с ячейки А3 "llastr = Cells(Rows.Count, 1).End(xlUp).Row "последняя ячейка столбца А "arr = Range(Cells(3, 1),Cells(llastr, 2)).Value For lr = 1 To 10000 arr(lr,1) = lr "заполняем массив порядковыми номерами Next "Выгружаем обработанный массив обратно на лист в те же ячейки Cells(1, 1).Resize(10000).Value = arr End Sub

    Sub TestOptimize_Array() "Непосредственно код заполнения ячеек Dim arr, lr As Long "запоминаем в массив одним махом все значения 10000 строк первого столбца arr = Cells(1, 1).Resize(10000).Value "если нужно заполнение для двух и более столбцов "arr = Cells(1, 1).Resize(10000, 2).Value "или "arr = Range(Cells(1, 1),Cells(10000, 2)).Value "или автоматически вычисляем последнюю ячейку и заносим в массив данные, начиная с ячейки А3 "llastr = Cells(Rows.Count, 1).End(xlUp).Row "последняя ячейка столбца А "arr = Range(Cells(3, 1),Cells(llastr, 2)).Value For lr = 1 To 10000 arr(lr,1) = lr "заполняем массив порядковыми номерами Next "Выгружаем обработанный массив обратно на лист в те же ячейки Cells(1, 1).Resize(10000).Value = arr End Sub

    Но здесь следует учитывать и тот момент, что большие массивы могут просто вызвать переполнение памяти. Наиболее актуально это для 32-битных систем, где на VBA и Excel выделяется памяти меньше, чем в 64-битных системах

  • Если используете быстрый ЕСЛИ - IIF , то замените его на IF ... Then ... Else
  • Так же лучше вместо Switch() и Shoose() применить тот же IF ... Then ... Else
  • В большинстве случаев проверять строку на "не пусто" лучше через Len() , чем прямое сравнение с пустотой: Len(s)=0 вместо s = "" . Связано с тем, что работа со строками значительно медленнее, чем с числовыми данными
  • Не применять объединение строк без необходимости. Например, s = "АВ" , будет быстрее, чем: s ="А" & "В"
  • Не применять сравнение текстовых величин напрямую. Лучше применить встроенную функцию StrComp:
    If s s1 Then будет медленнее, чем
    If StrComp(s, s1, vbBinaryCompare) = 0
    и тем более, если при сравнении необходимо не учитывать регистр:
    If LCase(s) LCase(s1) Then будет медленнее, чем
    If StrComp(s, s1, vbTextCompare) = 0
  • Циклы For … Next в большинстве случаев работает быстрее, чем цикл Do ... Lоор
  • Избегать присвоения переменным типа Variant . Хоть соблазн и велик - этот тип забирает много памяти и в дальнейшем замедляет работу кода. Так же для объектных переменных следует избегать по возможности безликого глобального типа Object и применять конкретный тип:

    Dim rRange as Range, wsSh as Worksheet

  • Если работаете с массивами, то можно при объявлении указать это явно:

    Dim arr() as string, arr2() as long

    но это только если есть уверенность в том, что в массив будут заноситься строго указанные типы данных

Конечно, это не все приемы и решения для оптимизации. Но на первых парах должно хватить. Плюс, всегда следует исходить из здравого смысла. Например, если код выполняется за 2 секунды, то вероятно нет смысла его дальше оптимизировать. Конечно, если этот код не из тех, которые просто изменяют значение одной-двух ячеек.

Статья помогла? Поделись ссылкой с друзьями! Видеоуроки

{"Bottom bar":{"textstyle":"static","textpositionstatic":"bottom","textautohide":true,"textpositionmarginstatic":0,"textpositiondynamic":"bottomleft","textpositionmarginleft":24,"textpositionmarginright":24,"textpositionmargintop":24,"textpositionmarginbottom":24,"texteffect":"slide","texteffecteasing":"easeOutCubic","texteffectduration":600,"texteffectslidedirection":"left","texteffectslidedistance":30,"texteffectdelay":500,"texteffectseparate":false,"texteffect1":"slide","texteffectslidedirection1":"right","texteffectslidedistance1":120,"texteffecteasing1":"easeOutCubic","texteffectduration1":600,"texteffectdelay1":1000,"texteffect2":"slide","texteffectslidedirection2":"right","texteffectslidedistance2":120,"texteffecteasing2":"easeOutCubic","texteffectduration2":600,"texteffectdelay2":1500,"textcss":"display:block; padding:12px; text-align:left;","textbgcss":"display:block; position:absolute; top:0px; left:0px; width:100%; height:100%; background-color:#333333; opacity:0.6; filter:alpha(opacity=60);","titlecss":"display:block; position:relative; font:bold 14px \"Lucida Sans Unicode\",\"Lucida Grande\",sans-serif,Arial; color:#fff;","descriptioncss":"display:block; position:relative; font:12px \"Lucida Sans Unicode\",\"Lucida Grande\",sans-serif,Arial; color:#fff; margin-top:8px;","buttoncss":"display:block; position:relative; margin-top:8px;","texteffectresponsive":true,"texteffectresponsivesize":640,"titlecssresponsive":"font-size:12px;","descriptioncssresponsive":"display:none !important;","buttoncssresponsive":"","addgooglefonts":false,"googlefonts":"","textleftrightpercentforstatic":40}}