powered by simpleCommunicator - 2.0.39     © 2025 Programmizd 02
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Ввести данные в ячейку из другой книги
21 сообщений из 21, страница 1 из 1
Ввести данные в ячейку из другой книги
    #35129623
zweck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Каким образом ввести в конкретную ячейку данные из другой таблицы (того же самого или другого) Exce-файла?
...
Рейтинг: 0 / 0
Ввести данные в ячейку из другой книги
    #35129906
например так: открыть два файла и руками вводить в первый то что видно во втором

p.s. какой вопрос, такой и ответ
(конкретики побольше, пожалуйста)
...
Рейтинг: 0 / 0
Ввести данные в ячейку из другой книги
    #35130005
Сергей06
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как пожелаетенапример так:(конкретики побольше, пожалуйста)
Или так:
В "Конкретную ячеку" пишем знак равно "=".
переходим на другой лист или в другую книгу и мышью шелкаем по "данным из другой таблицы"
Помним, что если это другая книга, то ссылка получится абсолютная, если в той же книге, то относительная.
...
Рейтинг: 0 / 0
Ввести данные в ячейку из другой книги
    #35130047
Фотография Rampage
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
Sub POISK3()

    RTRN_NAME = ActiveWorkbook.Name
    Application.ScreenUpdating = False

    Workbooks.Open Filename:="C:\book1.xls" ', ReadOnly:=True 'другая книга
    Windows(RTRN_NAME).Activate
   p = Workbooks("book1.xls").Sheets("EUR").Cells( 36 ,  8 ) 'адрес ячейки которую надо копировать
          
   Workbooks("book1.xls").Close savechanges:=False
  Application.ScreenUpdating = True
  Sheet1.Cells( 2 ,  5 ) = p 'адрес ячейки в вашей книге куда надо вставить.
End Sub
вообщем та незачто
...
Рейтинг: 0 / 0
Ввести данные в ячейку из другой книги
    #35639006
Фотография smoyk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сергей06Помним, что если это другая книга, то ссылка получится абсолютная, если в той же книге, то относительная.Можно ли ссылку на другую книгу сделать относительной?
...
Рейтинг: 0 / 0
Ввести данные в ячейку из другой книги
    #35639040
Сергей06
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
smoyk,
да, нужно убрать знаки доллара.
Напр. выделить абсолютную ссылку и 3 раза нажать F4

ЗЫ
F1
набрать "относительные ссылки"
Нажать энтер и читать
...
Рейтинг: 0 / 0
Ввести данные в ячейку из другой книги
    #35639047
Фотография smoyk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сергей06,

У меня в формуле нет знаков доллара (относящхся к пути файла).
Код: plaintext
='F:\Обмен\Бюджетирование\[Сводный бюджет РЦ.xls]Свод бюджет РЦ'!$C$ 4 /$CY$ 6 *D6
Сокращение пути не работает, при нажатии ентера выводит диалоговое окно "Обновить значения:..." выбора файла, при нажатии отмена восстанавливает исходное значение пути. При выборе файла прописывает новый путь, опять абсолютный.
Такая вот трабла.
...
Рейтинг: 0 / 0
Ввести данные в ячейку из другой книги
    #35639048
Фотография smoyk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, спасибо за совет F1, но эту клавишу я знаю и частенько юзаю. К сожалению в справке можно найти не все.
...
Рейтинг: 0 / 0
Ввести данные в ячейку из другой книги
    #35639053
Сергей06
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Rampage,

Код: plaintext
1.
2.
Private Sub Worksheet_Change(ByVal Target As Range)
  Workbooks("Книга2.xls").Worksheets("Лист1").Range(Target.Address).FormulaR1C1 = Target.FormulaR1C1
End Sub
отсюда
отсюда
...
Рейтинг: 0 / 0
Ввести данные в ячейку из другой книги
    #35639065
Сергей06
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
smoyk
Код: plaintext
='F:\Обмен\Бюджетирование\[Сводный бюджет РЦ.xls]Свод бюджет РЦ'!$C$ 4 /$CY$ 6 *D6
Сокращение пути не работает, при нажатии ентера выводит диалоговое окно "Обновить значения:..." выбора файла, при нажатии отмена восстанавливает исходное значение пути. При выборе файла прописывает новый путь, опять абсолютный.
Такая вот трабла.Понял следующим образом:
Файл "Сводный бюджет РЦ" лежал в папке "Бюджетирование", а его оттуда переместили, например, папку "Отчет по бюджетам" вместе с файлом из которого ты привел ссылку? Так?
В этом случае просто-просто путь файла поменять нельзя.
Несколько простых ручных способов:
1. Открыть все связанные файлы и сохранить их в новых местах.
2. Открыть файл "Отчет по бюджетам", зайти в Правка -- Связи -- и изменить связь на файл "Сводный бюджет РЦ" указав его новый путь. В этом случае не придется изменять каждую связанную ячейку.

Наверняка возможна автоматизация с помощью написания пользовательской функции, но недостатков, опять же наверняка, будет больше чем достоинств :-)
...
Рейтинг: 0 / 0
Ввести данные в ячейку из другой книги
    #35639147
Фотография smoyk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сергей06,

Вы практически все поняли правильно. Но решения не подходят. И в первом и во-втором случае пути обновятся, но остануться абсолютными. Я сделал как вы сказали. Теперь при удалении части пути он уже не выводит окно "Обновление связи:...", но и путь не сокращает! Я удаляю часть пути, перехожу на другую ячейку, он переходит нормально, но путь при этом восстанавливает свое исходное значение.

Я создаю эти файлы программно, из делфи. Куда их выгрузит пользователь я не знаю, но знаю, что они будут в одной папке, поэтому меня абсолютные пути никак не устраивают, они наверняка будут ошибочны. Надо указать, что связь идет с файлом, расположенном в той же папке. Можно это как нибудь сделать?
...
Рейтинг: 0 / 0
Ввести данные в ячейку из другой книги
    #35640170
Aster32
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вы уверены что пользователям так уж нужны связи между разными книгами? Ничего более глючного и сопряженного с массой ошибок мне в екселе просто не известно. Тем более если связи создаются программным путем.

Может стоит вместо вывода данных в разные книги выводить их в разные листы одной книги?
...
Рейтинг: 0 / 0
Ввести данные в ячейку из другой книги
    #35640829
solomka1985
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
если книга [Сводный бюджет РЦ.xls] будет лежать в тойже папке, что и связываемые файлы то при её открытии можно прописать макрос, который при открытии файла будет:

- если ячеек не большое количество, то
заносить в ячейки формулы где в качестве части строки формулы будет строка ThisWorkbook.Path

- если нужно изменять много ячеек, то лучше сделать это за один раз
попробуй поиграться с объектом
Set aLinks = ActiveWorkbook.LinkSources(xlLinkTypeExcelLinks)
...
Рейтинг: 0 / 0
Ввести данные в ячейку из другой книги
    #35642946
Фотография smoyk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aster32Вы уверены что пользователям так уж нужны связи между разными книгами? Ничего более глючного и сопряженного с массой ошибок мне в екселе просто не известно. Тем более если связи создаются программным путем.Пользователям они конешно может и не нужны, но мы не всегда можем выполнить требования пользователей в полном объеме в силу разных причин.
Моежете конкретизировать глюки и ошибки, возникающие при создании связей на другие книги? Мне пока что такие не попадалиь (что конешно не говорит о том, что их нет)...
Aster32Может стоит вместо вывода данных в разные книги выводить их в разные листы одной книги?Боюсь заказчику это понравится куда меньше, чем ссылка на другую книгу в формулах. Но за мысль спасибо, хоть она и простая, а мне в голову не пришла))...
...
Рейтинг: 0 / 0
Ввести данные в ячейку из другой книги
    #35642947
Фотография smoyk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
solomka1985,

Макрос - это конешно не то, что мне бы хотелось видеть в выгружаемой книге, но другого способа прописать относительный путь похоже нет. Спасибо за совет.
...
Рейтинг: 0 / 0
Ввести данные в ячейку из другой книги
    #35646403
Сергей06
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
smoyk,
А что если попробовать выкрутиться следующим образом:

Ты формируешь несколько связанных между собой файлов.
Сохраняешь их.
Потом закидываешь в раровский архив (сохраняя только относительные пути во вкладке "Файлы" окни рара) и передаешь его пользователям (может лучше самораспаковывающимся архивом?).
Они его распаковывают у себя где захотят (т.е. не работают из окна винрара). В этом случае будет прописан путь твоей временной папки.
Пути прописываются как нужно.
Проверь на примере. ;-)
Получилось?
...
Рейтинг: 0 / 0
Ввести данные в ячейку из другой книги
    #35659344
Фотография smoyk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Извините что поднимаю старую тему, но хотелось бы ответить как я решил (или она сама решилась) проблему с относительными ссылками.

Вариант Сергея достаточно интересен, согласен) но и сложен тоже достаточно. Все оказалось намного проще чем я думал.

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

Открываю две книги. Прописываю формулу со ссылкой из одной книги в другую. Путь относительный - только имя файла. Закрываю ту книгу, на которую ссылался - путь меняется на абсолютный. Переношу оба файла в другое место - путь автоматически меняется на новый, все работаен корректно.

Пипец, столько времени убил на такую фигню, как ввод относительного пути, а в екселе все это реализовано и без моих потугов))

Всем спасибо кто откликнулся и помагал в решении проблемы.
...
Рейтинг: 0 / 0
Ввести данные в ячейку из другой книги
    #35761171
Сергей06
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Доброго дня.
Снова поднимаю тему о переносе взаимосвязанных файлов из одного места, в другое.
вроде Эксель хранит ссылки относительные, а вроде бы и абсолютные.
Попробую пояснить.
имеем несколько вложенных папок, в которых находятся взаимосвязанные экселевские файлы:
\\сервер\шара\данные\город\лицо.xls
\\сервер\шара\данные\город\лицо1.xls
\\сервер\шара\свод.xls
\\сервер\шара\отчет\город\отчетПоМорде1.xls
\\сервер\шара\отчет\город\отчетПоМорде2.xls

свод.xls берет данные из файлов лицо и лицо1, а также из отчетовПоМордам
лицо и лицо1 в свою очередь берут данные из свода (не цикл, но все равно не очень приятно)
отчетпоморде1 и отчетпоморде2 также берут данные из свода.
Вот такие примерные взаимосвязи.

Нужно файлы выложить на другом \\серваке.
Если копируем шару вместе со всем содержимым, то имеем очень интересную картину:
Свод.xls, который непосредственно в шаре лежит, меняет все свои формулы-сцылки на
\\сервак\шара\данные\город\лицо.xls
Те файлы, которые лежат глубже шары (в данные\город или в отчет\город) так делать не хотят.
Они как и прежде ссылаются на \\сервер, а не на \\сервак

Почему?
Как решить эту проблему?

есть одна мысль, но эта мысль не совсем может подойти к нашей фирме:
организовать новый сервер с прежним именем, но другим айпишником, и туда слить файлы (хорошо, что ссылок по номеру сервера нет).
Так получится?
...
Рейтинг: 0 / 0
Ввести данные в ячейку из другой книги
    #35763943
Сергей06
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
может что не ясно выразил?
может пояснения какие-либо сделать?
Вообще, кроме как ручками менять ссылки есть решение проблемы?
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Ввести данные в ячейку из другой книги
    #39055314
Viktor.K.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Rampage, Спасибо за идею :) Подогнал до собственных нужд и получил код кнопки, если кому надо нечто подобное.
Есть два файла лежащих в одной папке. Один защищен от редактирования и просмотра, другой в общем доступе всей компании. Тот что защищен, оснащен удобными фильтрами, макросами и прочим, а тот с которой производим копирование - простая таблица, которую заполняют разные сотрудники. Так-как некоторые бесплатные офисные приложения нарушают структуру макросов и таблицы, то вынужден был сделать 2 таблицы.
Code
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
Sub Кнопка3_Обновить()
    RTRN_NAME = ActiveWorkbook.Name
    Application.ScreenUpdating = False
    Basebook = "code.xlsx" 'Название таблицы из которой копируем
    BaseDir = ActiveWorkbook.Path + "\" + Basebook 'если оба файла в одной папке, оставляем как есть
    Workbooks.Open Filename:=BaseDir
    Windows(RTRN_NAME).Activate
    'Разбил копирование на 2 этапа, так как правее трех столбцов, столбцы с формулами, содержимое которых я нарушать не хочу
    codes = Range(Workbooks(Basebook).Sheets("Отчет").Cells(7, 2), Workbooks(Basebook).Sheets("Отчет").Cells(1504, 4))
    inf = Range(Workbooks(Basebook).Sheets("Отчет").Cells(7, 6), Workbooks(Basebook).Sheets("Отчет").Cells(1504, 12))
    Workbooks(Basebook).Close savechanges:=False
    Application.ScreenUpdating = True
    Range(Workbooks(ActiveWorkbook.Name).Sheets("Отчет").Cells(7, 2), Workbooks(ActiveWorkbook.Name).Sheets("Отчет").Cells(1504, 4)) = codes
    Range(Workbooks(ActiveWorkbook.Name).Sheets("Отчет").Cells(7, 6), Workbooks(ActiveWorkbook.Name).Sheets("Отчет").Cells(1504, 12)) = inf
    'Переменные хранящие большие массивы лучше очистить после копирования, чтоб не занимали место в памяти.
    codes = ""
    inf = ""
End Sub




При копировании из таблицы code.xlsx, скрипт не нарушит структуру таблицы, а только скопирует данные
...
Рейтинг: 0 / 0
Ввести данные в ячейку из другой книги
    #39055324
Viktor.K.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сергей06, Если вдруг за 6 лет вопрос не утратил актуальности, то попробуй не названия серверов, а IP вводить, возможно что-то не так с DNS сервером...
...
Рейтинг: 0 / 0
21 сообщений из 21, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Ввести данные в ячейку из другой книги
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]