Именуване на работен лист като стойност на целева клетка - Съвети на Excel

Съдържание

Дейвид пита:

Как мога да променя името само на работния лист, като текстът се намира в клетка А1.

Използвайте този макрос:

Public Sub RenameSheet() NewName = Range("A1").Value ActiveSheet.Name = NewName End Sub

Крис беше изтеглил безплатната добавка на Microsoft, за да намери и премахне връзки към други работни книги. Работи добре, но след това той започна да получава съобщение за грешка: „Код за грешка при рутинно местоположение: 2“. Не можах да намеря нищо на сайта на Microsoft, но на немскоезичен табло за съобщения на Excel се спомена подобен проблем. Без отговор от Microsoft е трудно да се каже защо това се случва на някои компютри, а не на други. Ако установите, че изпитвате този проблем, трябва да деинсталирате добавката в диалоговия прозорец Инструменти> Добавки.

Main пише, за да попита дали има клавишна комбинация за преместване към други раздели в работната книга. Винаги използвам Ctrl + PgUp, за да се преместя в раздел вляво от текущия работен лист, и Ctrl + Pgdn, за да се преместя в раздел вдясно.

Павел пита:

Имам например следната връзка: =Sheet2!$B$4. Възможно ли е да направите променлива на името на листа (Sheet2), напр. Позовавайки се на клетка с името на листа?

Павел - =INDIRECT()функцията трябва да ви помогне в това отношение. Навсякъде, където обикновено бихте въвели препратка към клетка, можете да използвате функцията Indirect. Вътре в скобите можете да използвате символи за обединяване, за да изградите валидна препратка към клетка. Например в клетка E4 написах „Sheet2“. В друга клетка въведох тази формула:

=INDIRECT(E4&"!B4")

Формулата правилно връща съдържанието на клетка B4 на Sheet2. Недостатъкът на използването на този метод е, че тъй като аргументът B4 е текст, Excel няма да актуализира тази формула, ако някога изрежете и поставите B4 на ново място.

Актуализация декември 2003:

Благодаря на Сай Прасад, който написа с подобрение на тази формула, която може да бъде копирана:

=INDIRECT($A$2&"!"&ADDRESS(ROW(),COLUMN()))

Актуализация от март 2005 г.

Благодаря на Франсиско Сандовал, който написа с това подобрение:

=INDIRECT(ADDRESS(ROW(),COLUMN(),4,1,$A$2))

Където 3-та променлива в този случай a 4, се отнася до начина, по който ще се препраща към клетката (абсолютна, относителна и т.н.), а 4-тата varialbe се отнася (A1 срещу L1C1)

Това е всичко за днес - имам много консултантска работа, която трябва да свърша днес. Извинете на всички, на които нямах време да отговоря. Ако не видите отговора на въпроса си, опитайте да го публикувате на таблото за съобщения - много лоялни читатели помагат с въпроси на дъската - това е чудесен начин да получите бързи отговори.

Интересни статии...