Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/как сделать динамический адрес в ячейке - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
Страница 1 из 11
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK 
Мир MS Excel » Вопросы и решения » Вопросы по Excel » как сделать динамический адрес в ячейке (Формулы/Formulas)
как сделать динамический адрес в ячейке
Keroll Дата: Среда, 20.01.2016, 20:19 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 6
Репутация: 0 ±
Замечаний: 0% ±

Excel 2003
Господа, перечитала уже кучу форумов, но или буратино был тупой, или...

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

Помогите, уже голову сломала )) Говорю сразу, с макросами и прочим очень тяжко дружу, но учусь... со скрипом....
[moder]Сюда кладите файл. Это прописано в Правилах форума
К сообщению приложен файл: _stat_2016.xls(35Kb)


Сообщение отредактировал Keroll - Среда, 20.01.2016, 20:24
 
Ответить
СообщениеГоспода, перечитала уже кучу форумов, но или буратино был тупой, или...

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

Помогите, уже голову сломала )) Говорю сразу, с макросами и прочим очень тяжко дружу, но учусь... со скрипом....
[moder]Сюда кладите файл. Это прописано в Правилах форума

Автор - Keroll
Дата добавления - 20.01.2016 в 20:19
Keroll Дата: Среда, 20.01.2016, 20:23 | Сообщение № 2
Группа: Пользователи
Ранг: Прохожий
Сообщений: 6
Репутация: 0 ±
Замечаний: 0% ±

Excel 2003
Забегу вперед, если ячейки будут ругаться ССЫЛКА это нормально, по ним мы видим что не заполнено, но главное чтобы там во всех ячейках был записан адрес со сдвигом +1 к порядковому номера из файла, откуда подтягивается информация. Как-то так.
ДВС не решение, потому как надо все открывать, а файликов могут быть тысячи (

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

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


Сообщение отредактировал Keroll - Среда, 20.01.2016, 21:04
 
Ответить
СообщениеЗабегу вперед, если ячейки будут ругаться ССЫЛКА это нормально, по ним мы видим что не заполнено, но главное чтобы там во всех ячейках был записан адрес со сдвигом +1 к порядковому номера из файла, откуда подтягивается информация. Как-то так.
ДВС не решение, потому как надо все открывать, а файликов могут быть тысячи (

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

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

Автор - Keroll
Дата добавления - 20.01.2016 в 20:23
Russel Дата: Четверг, 21.01.2016, 08:11 | Сообщение № 3
Группа: Друзья
Ранг: Старожил
Сообщений: 1252
Репутация: 284 ±
Замечаний: 0% ±

Excel 2010
Если правильно понял:
Код
=ДВССЫЛ(СЦЕПИТЬ("\\Work\02---orders\[";ТЕКСТ(СТРОКА()-3;"00");".xls]Форма'!$L$26"))

UPD Невнимательно прочитал второе сообщение.
Наверное лучше замену макросом.


QIWI 9173973973

Сообщение отредактировал Russel - Четверг, 21.01.2016, 08:14
 
Ответить
СообщениеЕсли правильно понял:
Код
=ДВССЫЛ(СЦЕПИТЬ("\\Work\02---orders\[";ТЕКСТ(СТРОКА()-3;"00");".xls]Форма'!$L$26"))

UPD Невнимательно прочитал второе сообщение.
Наверное лучше замену макросом.

Автор - Russel
Дата добавления - 21.01.2016 в 08:11
pabchek Дата: Четверг, 21.01.2016, 13:03 | Сообщение № 4
Группа: Проверенные
Ранг: Ветеран
Сообщений: 664
Репутация: 147 ±
Замечаний: 0% ±

Excel 2007
Не полностью автоматизировано - если устроит алгоритм, можно и макрос сварганить. Но и руками не долго получится. Идея такова:
формируем путь (в примере колонка О), затем копируем значения в колонку D и заменяем маркер на знак "="
К сообщению приложен файл: 1480131.xls(40Kb)


"Учиться, учиться и еще раз учиться!"
WM: R399923528092


Сообщение отредактировал pabchek - Четверг, 21.01.2016, 13:04
 
Ответить
СообщениеНе полностью автоматизировано - если устроит алгоритм, можно и макрос сварганить. Но и руками не долго получится. Идея такова:
формируем путь (в примере колонка О), затем копируем значения в колонку D и заменяем маркер на знак "="

Автор - pabchek
Дата добавления - 21.01.2016 в 13:03
Keroll Дата: Четверг, 21.01.2016, 14:58 | Сообщение № 5
Группа: Пользователи
Ранг: Прохожий
Сообщений: 6
Репутация: 0 ±
Замечаний: 0% ±

Excel 2003
затем копируем значения в колонку D и заменяем маркер на знак "="


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

Не в обиду основателям форума, но я даже не знаю что мне отжать из примера, чтобы влезть в 100кб!


Сообщение отредактировал Keroll - Четверг, 21.01.2016, 15:04
 
Ответить
Сообщение
затем копируем значения в колонку D и заменяем маркер на знак "="


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

Не в обиду основателям форума, но я даже не знаю что мне отжать из примера, чтобы влезть в 100кб!

Автор - Keroll
Дата добавления - 21.01.2016 в 14:58
pabchek Дата: Четверг, 21.01.2016, 15:51 | Сообщение № 6
Группа: Проверенные
Ранг: Ветеран
Сообщений: 664
Репутация: 147 ±
Замечаний: 0% ±

Excel 2007
Вот файлики. В колонке К прописываете свой путь. Затем выделяете данные из колонки О и вставляете их как значения в колонку D. Затем Cntrl+H => заменить ёёё на =
К сообщению приложен файл: 7715747.xls(40Kb) · 01.xls(16Kb)


"Учиться, учиться и еще раз учиться!"
WM: R399923528092
 
Ответить
СообщениеВот файлики. В колонке К прописываете свой путь. Затем выделяете данные из колонки О и вставляете их как значения в колонку D. Затем Cntrl+H => заменить ёёё на =

Автор - pabchek
Дата добавления - 21.01.2016 в 15:51
Keroll Дата: Четверг, 21.01.2016, 18:45 | Сообщение № 7
Группа: Пользователи
Ранг: Прохожий
Сообщений: 6
Репутация: 0 ±
Замечаний: 0% ±

Excel 2003
Удалено. Нарушение п.5о Правил форума


Сообщение отредактировал Pelena - Четверг, 21.01.2016, 18:53
 
Ответить
СообщениеУдалено. Нарушение п.5о Правил форума

Автор - Keroll
Дата добавления - 21.01.2016 в 18:45
Keroll Дата: Пятница, 10.02.2017, 21:54 | Сообщение № 8
Группа: Пользователи
Ранг: Прохожий
Сообщений: 6
Репутация: 0 ±
Замечаний: 0% ±

Excel 2003
Возвращаюсь к теме.
Так и не реализовали это в файле ( Не отрабатывает потом почему-то сборка в строке. Объясните.
 
Ответить
СообщениеВозвращаюсь к теме.
Так и не реализовали это в файле ( Не отрабатывает потом почему-то сборка в строке. Объясните.

Автор - Keroll
Дата добавления - 10.02.2017 в 21:54
Nic70y Дата: Суббота, 11.02.2017, 08:10 | Сообщение № 9
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3658
Репутация: 752 ±
Замечаний: 0% ±

Excel 2013


ЯД(poison) 41001841029809
+7 978 049 98 74 (мтс)
 
Ответить
СообщениеНе это часом?

Автор - Nic70y
Дата добавления - 11.02.2017 в 08:10
Keroll Дата: Суббота, 11.02.2017, 16:06 | Сообщение № 10
Группа: Пользователи
Ранг: Прохожий
Сообщений: 6
Репутация: 0 ±
Замечаний: 0% ±

Excel 2003
Не это часом?


Буратино туп...( и разобраться не удается( макрос не запускается( с безопасностью все перепробовала
 
Ответить
Сообщение
Не это часом?


Буратино туп...( и разобраться не удается( макрос не запускается( с безопасностью все перепробовала

Автор - Keroll
Дата добавления - 11.02.2017 в 16:06
Wasilich Дата: Суббота, 11.02.2017, 20:22 | Сообщение № 11
Группа: Друзья
Ранг: Старожил
Сообщений: 1070
Репутация: 293 ±
Замечаний: 0% ±

2003
можете как пример мне сделать 2 файла, адрес расположения не важен
Надеюсь, макрос как пример подойдет? Но пример для файлов с именами файл1.xls, файл2.xls и тд, ибо, не представляю как будут выглядеть имена тысяч файлов.
[vba]
Код
Sub Собрать()
    Dim iPath$, iFile$, iList$, iCels$, i&, s&
    Columns("A:A").ClearContents ' чистим столбец А
    iPath = "C:\Отчеты\" 'путь к файлу
    iFile = "файл1" 'имя первого файла
    iList = "Форма"  'имя листа
    iCels = "A2" 'имя ячейки
    i = 1 'счетчик номеров файла
    s = 2 'Начальная строка записи данных
    Do While Dir(iPath & iFile & ".xls") <> "" 'Выполняем пока есть файлы
      'записываем данные из ячейки А2 найденных файлов
      Cells(s, "A").Formula = "='" & iPath & "[" & iFile & "]" & iList & "'!" & iCels
      s = s + 1: i = i + 1
      iFile = "файл" & i 'имя следующего файла
    Loop
End Sub
[/vba]
 
Ответить
Сообщение
можете как пример мне сделать 2 файла, адрес расположения не важен
Надеюсь, макрос как пример подойдет? Но пример для файлов с именами файл1.xls, файл2.xls и тд, ибо, не представляю как будут выглядеть имена тысяч файлов.
[vba]
Код
Sub Собрать()
    Dim iPath$, iFile$, iList$, iCels$, i&, s&
    Columns("A:A").ClearContents ' чистим столбец А
    iPath = "C:\Отчеты\" 'путь к файлу
    iFile = "файл1" 'имя первого файла
    iList = "Форма"  'имя листа
    iCels = "A2" 'имя ячейки
    i = 1 'счетчик номеров файла
    s = 2 'Начальная строка записи данных
    Do While Dir(iPath & iFile & ".xls") <> "" 'Выполняем пока есть файлы
      'записываем данные из ячейки А2 найденных файлов
      Cells(s, "A").Formula = "='" & iPath & "[" & iFile & "]" & iList & "'!" & iCels
      s = s + 1: i = i + 1
      iFile = "файл" & i 'имя следующего файла
    Loop
End Sub
[/vba]

Автор - Wasilich
Дата добавления - 11.02.2017 в 20:22
Мир MS Excel » Вопросы и решения » Вопросы по Excel » как сделать динамический адрес в ячейке (Формулы/Formulas)
Страница 1 из 11
Поиск:

Яндекс цитирования
© 2010-2017 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!