Перейти к содержимому

Import/export Real-time In Excel


Maker

Recommended Posts

Уважаемые участники форума, уважаемая администрация.

Мой вопрос напрямую связан с импортом/экспортом данных из и в Excel.

Итак требуется выполнить следующее:

Мне необходимо организовать связь real-time между двумя экселовскими файлами. Допустим открыты два файла А и Б на двух компьютерах, подключенных в одну сетку. Если я выполню какие-либо изменения в какой-либо ячейке файла А, находящегося у себя на компе, необходимо, чтобы это СРАЗУ отразилось в файле Б, открытым на другом компьютере. Двусторонняя связь необязательна; т.е. изменения в файле Б могут и не отражаться в файле А.

Очень надеюсь на вашу помощь.

С уважением,

Ссылка на комментарий
Поделиться на других сайтах

files identical?

Это какие-то волшебные слова? Надо произнести их в микрофон и все получится, да? Во Билли даёт!!!

Спасибо Nikoletta!

Ссылка на комментарий
Поделиться на других сайтах

По моему это невозможно, хотя кто знает.

Но я экпирементировал на ACCESS, там можно задать в опции ALLOW TO USE DATA SHEET TO _ USERS.

Если немножко покываряться может и в EXCELL можно.

Ссылка на комментарий
Поделиться на других сайтах

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

Есть еще один вариант. Я встречал программу, позволяющую управлять чужим компьютером через LAN. Даже мышкой двигать... Но не в этом суть. Суть в том, что с помощью проги можно было видеть чужой ЭКРАН. Может есть программа, которая позволяла бы видеть чей-нибудь экран, или часть его или отображать конкретную программу. Учтите, ничего подпольного, настройки можно делать как на машине А, так и на машине В.

PLEASE, HEEEEEEEEEEEELP!!!!!

Ссылка на комментарий
Поделиться на других сайтах

Не лучше ли иметь один файл, неважно на какой машине...

А когда надо посмотреть данные, просто открывать его...

Допустим изменениR вносRтьсR на одной машине: распологаем файл на локальной машине и вносим изменениR... на другой же машине, при необходимости посмотреть данные, просто открываем файл по сети...

В принципе так мона и с двумR, и с тремR свRзанными файлами.

А можно просто написать макрос, который бы проверял обновилсR ли файл на другой машине, и если да, то перечитывал бы его...

...увы...

Ссылка на комментарий
Поделиться на других сайтах

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

Есть еще один вариант. Я встречал программу, позволяющую управлять чужим компьютером через LAN. Даже мышкой двигать... Но не в этом суть. Суть в том, что с помощью проги можно было видеть чужой ЭКРАН. Может есть программа, которая позволяла бы видеть чей-нибудь экран, или часть его или отображать конкретную программу. Учтите, ничего подпольного, настройки можно делать как на машине А, так и на машине В.

PLEASE, HEEEEEEEEEEEELP!!!!!

пишешь программу, загружающую данные в file А и делающую output в file B; одновременно я не могу открывать 2 Excel файла с одинаковым названием , у меня нет такого разрешения, назови их по-разному, тогда сможешь открыть на двух машинах одновременно

Ссылка на комментарий
Поделиться на других сайтах

пишешь программу...

СТОП! Можно дальше не продолжать. Я не программист, хоть и продвинутый пользователь.

Ссылка на комментарий
Поделиться на других сайтах

почти всегда можно обьеденить два документа в одну книгу и открывать ее для совместного использования.

А там уже просто слинковать ячейки из отдельных листов. тем более если ничего подпольного))).

для того чтоб изменения появились у всех узеров надо незабывать жать Ctrl-S или настроить автосохранение.

Ссылка на комментарий
Поделиться на других сайтах

Жду, товарищи, жду. Однако пока толковых предложений нет.

Пойми те же, речь идет не о Ctrl+S, а о Real Time изменениях. Короче забудьте про Excel.

Может кто знает какую-нибудь программу, позволяющую показывать (транслировать) экран. Легко и просто, чтобы определенная мною часть моего экрана была обозрима на другом компе.

Я вчера сделал поиск в yahoo с ключевым словом Remote Desktop. Много чего появилось, но я с этим не очень знаком. Короче продолжаю ждать...

С уважением.

Ссылка на комментарий
Поделиться на других сайтах

Maker, тебе нужен tool, который будет показывать на одном экране таблицу, и при realtime изменениях изменять и на другом компе? Показывать эту таблицу обязательно должна готовая прога (Excel, Access e.t.c.)? Если можно написать свою - ту, которая будет тебе эту таблицу показывать, то там и делать нечего...

Ссылка на комментарий
Поделиться на других сайтах

Maker, тебе нужен tool, который будет показывать на одном экране таблицу, и при realtime изменениях изменять и на другом компе? Показывать эту таблицу обязательно должна готовая прога (Excel, Access e.t.c.)? Если можно написать свою - ту, которая будет тебе эту таблицу показывать, то там и делать нечего...

Да, Дрим-Тим, да!!! Необязательно чтобы таблицу показывала готовая прога, можно написать свою, только я не могу, вот и приходится ориентироваться на готовые.

Если у тебя есть желание написать такую прогу, я могу более подробно тебе описать то, что требуется.

Жду.

Ссылка на комментарий
Поделиться на других сайтах

Да, Дрим-Тим, да!!! Необязательно чтобы таблицу показывала готовая прога, можно написать свою, только я не могу, вот и приходится ориентироваться на готовые.

Если у тебя есть желание написать такую прогу, я могу более подробно тебе описать то, что требуется.

Жду.

Да без проблем... Тут делов на пару часиков...

Ссылка на комментарий
Поделиться на других сайтах

>>>>>>Пойми те же, речь идет не о Ctrl+S, а о Real Time изменениях. Короче забудьте про Excel.<<<<<<,

Экий вы , батенька , ленивый.)))))

от страданий вас спасет

[pre]Private Sub Worksheet_Change(ByVal Target As Range)

ActiveWorkbook.Save

End Sub[/pre]

если , конечно , нет никаких препятствий к обьединению двух документовв одну книгу.

Сейвать то се равно придется , хоть ручками , хоть скриптом

Ссылка на комментарий
Поделиться на других сайтах

To: Дрим-тим & oslik_ia

Итак, все намного проще. Не надо ничего писать. В Excel есть возможность публикавать worksheet (Publish). А там, галочка публиковать КАЖДЫЙ РАЗ после сохранения workbook. Таким образом, мне нужно следующее.

Макрос в Excel, который бы сохранял файл через заданный временной интервал, это приведет к автопубликации worksheet. Excel будет каждый раз перезаписывать созданный им html файл, поэтому изменять этот файл не имеет смысла. Надо создать другой html файл со скриптом, который отображал и перезагружал бы (reload) файл, созданный Excel через заданный временной интервал.

ПОМОГИТЕ!!!!

Ссылка на комментарий
Поделиться на других сайтах

Excel будет каждый раз перезаписывать созданный им html файл, поэтому изменять этот файл не имеет смысла. Надо создать другой html файл со скриптом, который отображал и перезагружал бы (reload) файл, созданный Excel через заданный временной интервал.

делаешь include и заставляешь страничку переодически обновляться.

всё B)

Ссылка на комментарий
Поделиться на других сайтах

Ну раз уж так..

обновлять страничку в броузере можно так

<html>

<head>

<meta http-equiv="refresh" content="здесь частота обновления в секундах">

</head>

<frameset frameborder="NO" border="0" framespacing="0">

<frame name="Frame" scrolling="NO" noresize src="здесь урл сгенерированой странички (//computer/folder/exelpage.html)">

</frameset>

</html>

для сохранения через определенный промежуток времени никаких макросов писать не надо, достаточно настроить автосохранение (помоему минимальный интервал 1 минута).

"макрос" для сохранения при изменениях я привел в предидущем посте.

Ссылка на комментарий
Поделиться на других сайтах

To: oslik_ia

Спасибо большое за html скрипт. Если будут проблемы дам знать.

Касательно автосохранения в Excel спешу сообщить, что в моем Excel-е (XP) автосохранения НЕТ, есть Save AutoRecovery File. По данному поводу в Help-е самого Excel написано, что:

"Do not use AutoRecover as a substitute for regularly saving your work by clicking Save on the Standard toolbar."

Так что макрос писать надо, и если он будет тут выложен, прошу написать его так, чтобы можно было просто скопировать его в редактор макросов, заменив всего лишь временной интервал.

Для решения задачи осталось совсем чуть-чуть! Спасибо!

Ссылка на комментарий
Поделиться на других сайтах

Автосохранение можно сделать , если разрешить совместную работу ))))

а если не охота то вот--

Private Sub Workbook_Open()

pause = 50 'eto interval v sekundah

Autosave (pause)

End Sub

Private Sub Autosave(timeout As Integer)

Dim start

start = Timer

Do While Timer < start + timeout

DoEvents

Loop

ActiveWorkbook.Save

Autosave (timeout)

End Sub

криво , но быстро

Однако то что вы делаете отнюдь не самый хороший подход

Ссылка на комментарий
Поделиться на других сайтах

Увы, но скрипт не работает. Excel вообще на него не реагирует. Я поставил интервал 5 секунд, так же как и html файл. Однако html файл обновляется, а Excel не сохраняется...

Что это за функция такая, разрешить совместную работу? Как она звучит на English?

А какой подход хороший?

Несчастный я человек.... :((

Ссылка на комментарий
Поделиться на других сайтах

Я нашел - Share Workbook. Да, там и вправду есть autosave, однако минимальный интервал ПЯТЬ МИНУТ, а мен нужно 5 СЕКУНД.

Прошу выложить РАБОЧИЙ макрос, который сохранял бы файл каждые 5 секунд. ПЛИИИИИИЗ!!!

Ссылка на комментарий
Поделиться на других сайтах

Гм...

Еще раз всем большое спасибо, все получилось, все работает. Однако, тут есть одно «НО». Дело в том, что задействовав макрос, который сохраняет Excel файл каждые 60 секунд, я не могу нормально работать с другими файлами. Почему-то команда undo становится недоступной, а порой вообще весь toolbar становиться бледным. Я точно проверил, чтобы этот макрос использовался ТОЛЬКО для КОНКРЕТНОГО ОДНОГО файла, но кажись Excel не хочет этого понимать.

Есть идеи?

Ссылка на комментарий
Поделиться на других сайтах

чес говоря чя думал что будут проблемы изза частого и долгого сохранения файла.Хотя может быть с этим и связан бледный тулбар

С ундо ничего удивительного - оно габотает только для несохраненных данных

"Я точно проверил, чтобы этот макрос использовался ТОЛЬКО для КОНКРЕТНОГО ОДНОГО файла" - непонятно

Кажеться с етим методом лучше и не сделаешь.

Другие решения -

Создать системный DSN и воспользоваться импортом данных. На локальном компе работает , по сети не знаю , но должно.Кажеться самый верный вариант , и действительно реалтайм.

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

Поднять в сети человеческую БД , сочинить километровый интерфейс , и тащится от собственной крутости.

Воспользоваться специально предназначеной для таких случаев функцией совместной работы (Share Workbook)

Ссылка на комментарий
Поделиться на других сайтах

чес говоря чя думал что будут проблемы изза частого и долгого сохранения файла.Хотя может быть с этим и связан бледный тулбар

С ундо ничего удивительного - оно габотает только для несохраненных данных

"Я точно проверил, чтобы этот макрос использовался ТОЛЬКО для КОНКРЕТНОГО ОДНОГО файла" - непонятно

Кажеться с етим методом лучше и не сделаешь.

Другие решения -

Создать системный DSN и воспользоваться импортом данных. На локальном компе работает , по сети не знаю , но должно.Кажеться самый верный вариант , и действительно реалтайм.

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

Поднять в сети человеческую БД , сочинить километровый интерфейс , и тащится от собственной крутости.

Воспользоваться специально предназначеной для таких случаев функцией совместной работы (Share Workbook)

"Я точно проверил, чтобы этот макрос использовался ТОЛЬКО для КОНКРЕТНОГО ОДНОГО файла" т.е. перед тем как запустить макрос, я выбираю This Workbook.

Я еще подумаю, что тут можно сделать.

Ссылка на комментарий
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вы вставили отформатированное содержимое.   Удалить форматирование

  Only 75 emoji are allowed.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Загрузка...
×
×
  • Создать...