Форум Умных Людей

Здравствуйте, гостьВход | Регистрация )

 
Ответить ·  Новая тема
 :: Excel: есть способ обратиться к предыдущему листу, не по имени?
 
utter
сообщение 9.7.2006, 19:34
Сообщение #1


Homo Immortalis
******

Группа: Moderators
Сообщений: 11036
Регистрация: 9.3.2004
Из: Великий Новгород
Пользователь №: 262
Спасибо сказали: 1




Репутация:   2  


Просто есть файл, в котором на каждый месяц отводятся отдельные листы. Остатки с предыдущего месяца переносятся на новый. Таким образом получается столбец с формулами наподобие этой: "=Май!Y2"
Может есть какое зарезервированное слово, которое можно использовать вместо "Май" чтобы обратиться просто к предыдущему листу?

Мессир
сообщение 10.7.2006, 12:12
Сообщение #2


Работаю...
****

Группа: Members
Сообщений: 1244
Регистрация: 14.8.2005
Из: Великий Новгород
Пользователь №: 9307
Спасибо сказали: 0




Репутация:   0  


utter, типо visual basic рулит, макрос создавать придётся, не?
Worksheets("Имя листа").Range("ячейка").Value

Добавлено:
это типо берём значение ячейки из такого-то листаwink.gif можно циклом, не помню точно как делается
CODE

for i = 1 to N
a[i] = Worksheets("Имя листа").Range("F" & i).Value
next i

utter
сообщение 10.7.2006, 12:33
Сообщение #3


Homo Immortalis
******

Группа: Moderators
Сообщений: 11036
Регистрация: 9.3.2004
Из: Великий Новгород
Пользователь №: 262
Спасибо сказали: 1




Репутация:   2  


Опять же имя листа нужно прописывать вручную smile.gif

Мессир
сообщение 10.7.2006, 12:37
Сообщение #4


Работаю...
****

Группа: Members
Сообщений: 1244
Регистрация: 14.8.2005
Из: Великий Новгород
Пользователь №: 9307
Спасибо сказали: 0




Репутация:   0  


utter, ну можно сделать изащрённее wink.gif не вруяную, допустим сделать так скажем динамический скрипт, а ты просто вводишь на листе, на котором надо разместить данные имя листа, с которого надо слить инфу wink.gif
напрмиер ты сидишь на листе июнь06, а тебе надо взять инфу с листа май05, где последние две цифры - год wink.gif, к примеру, и есть отдельное поле на каждом листе где вводишь родительный лист wink.gif вот и вводишь там май05, а в скрипте:
list = range("F100");
далее цикл что выше. но вместо
"имя листа" пишешь переменную list
а поле F100 - содержит то, что ты ввёл

Andrey666
сообщение 10.7.2006, 12:37
Сообщение #5


Homo Liderus
*****

Группа: Members
Сообщений: 3363
Регистрация: 31.12.2004
Пользователь №: 3796
Спасибо сказали: 0




Репутация:   0  


utter, к элементу коллекции можно обращаться по номеру.

utter
сообщение 10.7.2006, 12:43
Сообщение #6


Homo Immortalis
******

Группа: Moderators
Сообщений: 11036
Регистрация: 9.3.2004
Из: Великий Новгород
Пользователь №: 262
Спасибо сказали: 1




Репутация:   2  


QUOTE (Andrey666, 10-07-06 @ 12:37)
к элементу коллекции можно обращаться по номеру

К элементу в смысле ячейке?.. это знаю. Как к листу?..

Мессир, да, надо будет подумать как лучше сделать

Andrey666
сообщение 10.7.2006, 13:30
Сообщение #7


Homo Liderus
*****

Группа: Members
Сообщений: 3363
Регистрация: 31.12.2004
Пользователь №: 3796
Спасибо сказали: 0




Репутация:   0  


QUOTE (utter, 10-07-06 @ 13:43)
Как к листу?

Так Worksheet сам является элементом коллекции Worksheets.

utter
сообщение 10.7.2006, 13:32
Сообщение #8


Homo Immortalis
******

Группа: Moderators
Сообщений: 11036
Регистрация: 9.3.2004
Из: Великий Новгород
Пользователь №: 262
Спасибо сказали: 1




Репутация:   2  


то бишь вместо Worksheets("Имя листа") можно указать Worksheets(номер_листа) и должно прокатить?
Спс. попробую

Andrey666
сообщение 10.7.2006, 13:40
Сообщение #9


Homo Liderus
*****

Группа: Members
Сообщений: 3363
Регистрация: 31.12.2004
Пользователь №: 3796
Спасибо сказали: 0




Репутация:   0  


QUOTE (utter, 10-07-06 @ 14:32)
то бишь вместо Worksheets("Имя листа") можно указать Worksheets(номер_листа) и должно прокатить?

Обязано. А чтобы получить лист, как объект Worksheets.Item(<номер>).

ЗЫ: Справку по VB при установке охвиса нужно ставить.

Мессир
сообщение 10.7.2006, 14:21
Сообщение #10


Работаю...
****

Группа: Members
Сообщений: 1244
Регистрация: 14.8.2005
Из: Великий Новгород
Пользователь №: 9307
Спасибо сказали: 0




Репутация:   0  


Andrey666, там справка на английском, уважаю всё русское, хотя и учился по этой... английской wink.gif А чилавекку может неудобно её читать :-)

Andrey666
сообщение 10.7.2006, 14:37
Сообщение #11


Homo Liderus
*****

Группа: Members
Сообщений: 3363
Регистрация: 31.12.2004
Пользователь №: 3796
Спасибо сказали: 0




Репутация:   0  


QUOTE (Мессир, 10-07-06 @ 15:21)
А чилавекку может неудобно её читать :-)

Неудобно штаны через голову надевать. И спать на потолке. Чёт мне дуиается, что для uttera это не проблема. Я и сам по-ангельски через пень-колоду читаю :-).

Ruff
сообщение 11.7.2006, 0:08
Сообщение #12


Homo Habilis
**

Группа: Members
Сообщений: 63
Регистрация: 17.12.2004
Пользователь №: 3540
Спасибо сказали: 0




Репутация:   0  


Подарю идею. Переименовать присоединенное в .xls
Желтые ячейки мона объеденить в одну формулу.
А радость в том, что в книге не нужны VB и макросы.
Цель получить в ячейке листа "имя листа".
Кому интересно можно поменять имя первого листа на более другое.
Немного монструозно, но действительно. нет макросов и VB. Лично я формулы написал один раз, потом закопировал их на все листы с шифтом.

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

Сообщение отредактировал Ruff - 11.7.2006, 0:19
Прикрепленные файлы
Прикрепленный файл  _____.jpg ( 0 байт ) Кол-во скачиваний: 91
 

utter
сообщение 11.7.2006, 10:30
Сообщение #13


Homo Immortalis
******

Группа: Moderators
Сообщений: 11036
Регистрация: 9.3.2004
Из: Великий Новгород
Пользователь №: 262
Спасибо сказали: 1




Репутация:   2  


Ruff, довольно простая и интересная идея smile.gif Спасибо. Пока сделаю так, как будет время - подумаю над макросами.

Andrey666
сообщение 11.7.2006, 10:33
Сообщение #14


Homo Liderus
*****

Группа: Members
Сообщений: 3363
Регистрация: 31.12.2004
Пользователь №: 3796
Спасибо сказали: 0




Репутация:   0  


utter, ты картинку видишь? у меня не кажет. :-(

utter
сообщение 11.7.2006, 10:35
Сообщение #15


Homo Immortalis
******

Группа: Moderators
Сообщений: 11036
Регистрация: 9.3.2004
Из: Великий Новгород
Пользователь №: 262
Спасибо сказали: 1




Репутация:   2  


QUOTE (Andrey666, 11-07-06 @ 10:33)
ты картинку видишь?

QUOTE (Ruff, 11-07-06 @ 00:08)
Переименовать присоединенное в .xls


GAHAN
сообщение 11.7.2006, 11:42
Сообщение #16


silent bot
****

Группа: Members
Сообщений: 1628
Регистрация: 7.4.2004
Из: В.Новгород -> Москва
Пользователь №: 621
Спасибо сказали: 0




Репутация:   0  


Ruff, Хорошая идея. спасибо за науку =) пригодится

vadi61
сообщение 4.3.2013, 1:54
Сообщение #17


Homo Guestus
*

Группа: Registered
Сообщений: 1
Регистрация: 4.3.2013
Пользователь №: 106525
Спасибо сказали: 0




Репутация:   0  


Прошло без малого 7 лет... Так нашел кто-нибудь способ обратиться с предыдущему листу с помощью формулы (без макроса) или этой возможности не существует?

Сообщение отредактировал vadi61 - 4.3.2013, 1:55

Валентина Лемяки...
сообщение 4.4.2019, 7:28
Сообщение #18


Homo Guestus
Иконка группы

Группа: Вконтакте
Сообщений: 1
Регистрация: 4.4.2019
Пользователь №: 141601
Спасибо сказали: 0




Репутация:   0  


Цитата(Ruff @ 11.7.2006, 0:08) *
Подарю идею. Переименовать присоединенное в .xls
Желтые ячейки мона объеденить в одну формулу.
А радость в том, что в книге не нужны VB и макросы.
Цель получить в ячейке листа "имя листа".
Кому интересно можно поменять имя первого листа на более другое.
Немного монструозно, но действительно. нет макросов и VB. Лично я формулы написал один раз, потом закопировал их на все листы с шифтом.

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


Мы уже в 2019м году. Поиски так и продолжаются. Предложенный 13 лет назад (!!) вариант из цитаты... наверное единственная надежда. Картинку не видно, к сожалению, а из текстового описания мне непонятно, как именно действовать.
Кто поможет ?
Заранее спасибо.

 

Быстрый ответ · · Ответить · Новая тема
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0


 :: Быстрый ответ
Полужирный
Курсив
Подчеркнутый
Вставить изображение
Смайлики
Цитата
Код
 Аватар:
 
 Отправлять уведомления об ответах на e-mail |  Включить смайлики |  Добавить подпись
   
 

RSS Текстовая версия Сейчас: 8.12.2019, 18:49
размещение рекламы; info@onfim.com; тел. +7 (8162) 90-00-35
Рейтинг@Mail.ru