Да, правда странно работает. Сейчас в книге 16 листов и открывается урезанная версия окна, а если добавить еще один лист (станет 17), то уже открывается нормальное окно, как на "скрин-2". Интересно, как это починить..
Но теперь при правильном отображении окна (в случае с 17+ листами) не работает перемещение по первым словам наименования листа. Видимо, под новые эксели нужен какой-то новый код, чтобы все нормально работало.
Не получается, если вписать число меньшее 16, то просто происходит перемещение на номер листа (указал 5 - прыгнет в 5 лист). Значения больше 16 открывают ту же самую таблицу.
Sub Select_Sheet() If ActiveWorkbook.Sheets.Count <= 16 Then Application.CommandBars("Workbook Tabs").ShowPopup 500, 225 Else Application.CommandBars("Workbook Tabs").Controls("More Sheets...").Execute End If End Sub
В версиях эксель 2010 и около этих годов, данный макрос открывал окно "скрин-1". В последних версиях эксель данный макрос открывает уже какую-то урезанную версию этого окна "скрин-2".
Кто-нибудь знает, как изменить код, чтобы на новых версиях эксель открывалось стандартное окно как на "скрин-1"?
Добрый день, есть необходимость установить постоянную область печати на листе в Excel.
Но есть проблема: обьекты печати находятся на большоим расстоянии друг от друга, поэтому не удается уместить их на один лист. Как можно решить эту проблему? Приложил пример обьектов к посту. Как сделать так, чтобы я смог уместить желтые квадраты на один лист печати? Можно ли как-то задать кастомно область печати отдельно на каждый обьект, а потом как-то обьединить эти области в 1 лист?
Добрый день, у меня есть два макроса. Первый - вырубает кнопку F1. Второй - открывает список листов в книге Excel. Я хочу чтобы первый макрос всегда автоматически работал, при открытии любого Excel файла чтобы у меня всегда F1 был выключен автоматически. Также, я хочу, чтобы второй макрос был забинджен на сочетание клавиш (на все регистры, т.е если это ctrl +e, то оно работало при любом языке и вкл/выкл caps lock).
Данные задачи реализовать точно можно, т.к тот же Arixcel умеет выполнять подобные запросы.
Вот уже готовые макросы для самих действий:
1) Выключение кнопки F1:
Sub disableF1() Application.OnKey "{F1}", "" End Sub
2) Открытие списка листов книги:
Sub Select_Sheet() If ActiveWorkbook.Sheets.Count <= 16 Then Application.CommandBars("Workbook Tabs").ShowPopup 500, 225 Else Application.CommandBars("Workbook Tabs").Controls("More Sheets...").Execute End If End Sub
Очень важно, чтобы это работало всегда и везде и не создавало никаких конфликтов у других пользователей файлов. Опять же, повторюсь, что существуют надстройки, которые выполняют какие-то функции с моими запросами и никаких проблем с файлами не появляется. По поводу стоимости услуги в лс.
Есть следующий шорткат, который открывает список всех листов в Excel:
Sub List() If ActiveWorkbook.Sheets.Count <= 16 Then Application.CommandBars("Workbook Tabs").ShowPopup 500, 225 Else Application.CommandBars("Workbook Tabs").Controls("More Sheets...").Execute End If End Sub
Я хочу, чтобы он был забинджен на сочетание клавиш ctrl+e, для этого я создал новый модуль:
Sub Application.OnKey "^e", "List" End Sub
Теперь, я хочу чтобы эксель в любом файле всегда знал про это сочетание и я всегда мог без лишних действий пользоваться им, как тем же ctrl + c. Для этого я нашел функцию Sub Auto_Open, но у меня никак не получается через нее реализовать мою задумку. Помогите, пожалуйста, как-то решить эту проблему.
Добрый день, нужна помощь. Хочу сделать так, чтобы во всех Эксель файлах у меня были нужные мне макросы. Для этого я создал свою надстройку (https://www.planetaexcel.ru/techniques/3/6154/), в которой это все хранится.
1) Теперь, я хочу сделать так, чтобы этот макрос (выключает кнопку F1):
Sub disableF1() Application.OnKey "{F1}", "" End Sub
Всегда включался сам, чтобы мне не приходилось постоянно его активировать руками. Те хочу, чтобы он работал всегда в фоновом режиме. Как это можно реализовать?:
2) У меня есть макрос на открытие списка листов Excel, чтобы можно было удобнее перемещаться по большим книгам:
Sub Select_Sheet() If ActiveWorkbook.Sheets.Count <= 16 Then Application.CommandBars("Workbook Tabs").ShowPopup 500, 225 Else Application.CommandBars("Workbook Tabs").Controls("More Sheets...").Execute End If End Sub
Я хочу, чтобы я мог легко запускать его сочетанием клавиш, желательно не через CTRL + буква, а CTRL + `. Если задать его через обычное назначение сочетания, то это сочетание работает только в том файле эксель, где я его ввел. Те если я открою другой файл, там уже это сочетание работать не будет. Помогите, пожалуйста, как-то задать сочетание клавиш навсегда, чтобы оно было единым для всех файлов.
Добрый день, нужна помощь. Хочу сделать так, чтобы во всех Эксель файлах у меня были нужные мне макросы. Для этого я создал свою надстройку (https://www.planetaexcel.ru/techniques/3/6154/), в которой это все хранится.
1) Теперь, я хочу сделать так, чтобы этот макрос (выключает кнопку F1):
Sub disableF1() Application.OnKey "{F1}", "" End Sub
Всегда включался сам, чтобы мне не приходилось постоянно его активировать руками. Те хочу, чтобы он работал всегда в фоновом режиме. Как это можно реализовать?:
2) У меня есть макрос на открытие списка листов Excel, чтобы можно было удобнее перемещаться по большим книгам:
Sub Select_Sheet() If ActiveWorkbook.Sheets.Count <= 16 Then Application.CommandBars("Workbook Tabs").ShowPopup 500, 225 Else Application.CommandBars("Workbook Tabs").Controls("More Sheets...").Execute End If End Sub
Я хочу, чтобы я мог легко запускать его сочетанием клавиш, желательно не через CTRL + буква, а CTRL + `. Если задать его через обычное назначение сочетания, то это сочетание работает только в том файле эксель, где я его ввел. Те если я открою другой файл, там уже это сочетание работать не будет. Помогите, пожалуйста, как-то задать сочетание клавиш навсегда, чтобы оно было единым для всех файлов.
Добрый день, нужна помощь. Хочу сделать так, чтобы во всех Эксель файлах у меня были нужные мне макросы. Для этого я создал свою надстройку (https://www.planetaexcel.ru/techniques/3/6154/), в которой это все хранится.
1) Теперь, я хочу сделать так, чтобы этот макрос (выключает кнопку F1):
Sub disableF1() Application.OnKey "{F1}", "" End Sub
Всегда включался сам, чтобы мне не приходилось постоянно его активировать руками. Те хочу, чтобы он работал всегда в фоновом режиме. Как это можно реализовать?:
2) У меня есть макрос на открытие списка листов Excel, чтобы можно было удобнее перемещаться по большим книгам:
Sub Select_Sheet() If ActiveWorkbook.Sheets.Count <= 16 Then Application.CommandBars("Workbook Tabs").ShowPopup 500, 225 Else Application.CommandBars("Workbook Tabs").Controls("More Sheets...").Execute End If End Sub
Я хочу, чтобы я мог легко запускать его сочетанием клавиш, желательно не через CTRL + буква, а CTRL + `. Если задать его через обычное назначение сочетания, то это сочетание работает только в том файле эксель, где я его ввел. Те если я открою другой файл, там уже это сочетание работать не будет. Помогите, пожалуйста, как-то задать сочетание клавиш навсегда, чтобы оно было единым для всех файлов.
У меня есть два макроса, которые я хочу использовать на постоянной основе во всех файлах Excel:
1. Отключение кнопки F1:
Sub disableF1()Application.OnKey "{F1}", "" End Sub
2. Открытие списка всех листов в Excel:
Sub Select_Sheet() If ActiveWorkbook.Sheets.Count <= 16 Then Application.CommandBars("Workbook Tabs").ShowPopup 500, 225 Else Application.CommandBars("Workbook Tabs").Controls("More Sheets...").Execute End If End Sub
Как сделать так, чтобы при открытии любого файла у меня всегда автоматически была выключена F1. И в памяти Excel была команда на открытие Листов в файле (те если F1 можно просто запускать и все, то в случае с макросом на лист, Ексель должен знать о существовании макроса, но запускать я его должен сам руками).
Очень надеюсь на помощь, думаю данные вещи могут быть полезны большому количеству людей.
Я про вот это. Хочу забиндить макрос на что-то типа alt + `, но стандартно эксель такое не разрешает. По идее же можно как-то вшить в сам макрос комбинацию клавиш, которые будут его активировать.
А может быть кто-нибудь знает, как это добро еще и забиндить не через стандартный выбор с ctrl + буква. А на произвольную комбинацию? Типа alt + ` например?
Мне нужно было не вывести список листов в экселе, а открывать таблицу листов, чтобы удобнее было перемещаться по нему.
Мой скрипт открывает таблицу как в 1 приложении. Но я хочу, чтобы макрос открывал оригинальную таблицу как во 2 приложении.
Чтобы из первой таблицы попасть во вторую нужно выбрать "other sheets". И этот шаг я хотел бы автоматизировать кодом, чтобы открывалась сразу 2 таблица.