Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/11: Рейтинг темы: голосов - 11, средняя оценка - 4.91
1 / 1 / 0
Регистрация: 12.09.2012
Сообщений: 9
1

Макрос для синхронизации листа и текстового документа

12.09.2012, 23:33. Показов 2118. Ответов 9
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Дорогие товарищи, ломаю голову и немогу решить вот такую проблему.
есть таблица выполненная в excel и подобная выполненная в блокноте.
как сделать чтобы при замене числа, например в ячейке E12, с 633,0 на 533,0 в блокноте происходило тоже самое 633.0 на 533.0 там числа через точку
Число 633.0 находится в 22 строчке с 39 символа последующие 5 символов.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.09.2012, 23:33
Ответы с готовыми решениями:

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

Сделать макрос в Word, вводишь строку и макрос произвольно меняет шрифт, цвет и размер для каждого слова из этого активного вордовского документа.
Началось VBA - лекций нет, только практика. Препод категоричеки отказывается что-нить объяснять,...

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

Макрос на создание листа и перенос данных с предыдущего листа
Помогите пожалуйста, мне нужен макрос на создание листа и перенос данных с предыдущего листа. Есть...

9
15145 / 6418 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
13.09.2012, 00:52 2
В чем вопрос-то: сохранять лист в ТХТ с десятичной точкой?
Visual Basic
1
ActiveSheet.SaveAs "MyFile.txt", FileFormat:=xlTextWindows, Local:=False
0
1 / 1 / 0
Регистрация: 12.09.2012
Сообщений: 9
13.09.2012, 13:33  [ТС] 3
сохранять не весь файл, а число из ячейки E12 в определенном месте ТXТ (22 строка, с 39 символа последующие пять.),
причем его нужно не просто вставить, а заменить то число которое уже находиться на этом месте в ТХТ
число в Excel с запятой, а в ТХТ должно быть с точкой.
0
14 / 3 / 0
Регистрация: 11.08.2012
Сообщений: 144
13.09.2012, 14:15 4
вы хотите сделать так, чтобы изменения вносились вручную в экселе, а в блокноте применялись автоматически? или наоборот тоже надо?
0
1 / 1 / 0
Регистрация: 12.09.2012
Сообщений: 9
13.09.2012, 14:30  [ТС] 5
да, именно так. чтобы в Excel в ручную а в блокноте автоматически.
нет, в этом макросе на оборот не надо.
но если знаете как сделать чтобы при замене числа в ручную в блокноте, в excel менялись автоматически, то был бы очень благодарен за информацию.
0
14 / 3 / 0
Регистрация: 11.08.2012
Сообщений: 144
13.09.2012, 15:19 6
Ну если только в одностороннем порядке... по идее лучше всего сделать импорт в таблицу из файла, внести изменения и экспортировать все обратно, чтобы и там и там гарантировано было одно и то же. как это сделать я не знаю, но если никто не поможет - узнаю) я просто сам только недавно стал с этим работать, если нет решения - поищу, но мне на это нужно время, к сожалению
0
1 / 1 / 0
Регистрация: 12.09.2012
Сообщений: 9
13.09.2012, 15:51  [ТС] 7
да, в одностороннем порядке и нужно. два макроса, один работает при замене значения в excel,
второй должен просто считывать определенное место в блокноте и вставлять значение в ячейку.
они не должны быть связаны между собой никак.

Добавлено через 20 минут
Я знаю как считать весь файл ТХТ и вставить его в excel построчно в один столбец делаю так
Visual Basic
1
2
3
4
5
6
7
8
9
 Dim TextLine
 i=1
Open " путь к файлу" For Input As #1
Do While Not EOF(1)
Line Input #1, TextLine
ThisWorkbook.Worksheets("лист1").Cells(i, 1).value = TextLine
i=i+1
Loop
Close #1
а как считать определенный кусок и вставить в определенную ячейку не знаю.
0
3218 / 967 / 223
Регистрация: 29.05.2010
Сообщений: 2,086
13.09.2012, 18:54 8
И все-таки вариант Казанского самый реальный, измени значение ячейки, сохрани в Excel, сохрани в блокнот, переписав файл.
0
1 / 1 / 0
Регистрация: 12.09.2012
Сообщений: 9
14.09.2012, 01:49  [ТС] 9
тогда как реализовать такой вариант.
копирую таблицу из тхт построчно в один столбец Excel, например на лист 2 (это я знаю как сделать)
соответственно в каждой строке создается много символов.
далее вопрос: как заменить определенные символы в строке на значения в ячейке B12 [лист 1]?
я знаю такой вариант:
Visual Basic
1
2
3
For Each cell In [A49] 'замена в строке 49
cell.Value = Mid(cell.Value, 1, 56) + "4.00"
Next
этот вариан делает практически то что нужно но, значение там прописано заранее, а нужно из ячейки В12 с листа 1.
далее вставить всю таблицу обратно (тоже знаю как сделать)

спасибо за предыдущие ответы, наводят на разумные мысли)
0
15145 / 6418 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
14.09.2012, 11:54 10
Цитата Сообщение от hoochiman Посмотреть сообщение
число из ячейки E12 в определенном месте ТXТ (22 строка, с 39 символа последующие пять.)
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
'число из ячейки E12 в определенном месте ТXТ (22 строка, с 39 символа последующие пять.)
 
Sub bb()
Dim s$, k%, i&, b() As Byte
    'формируем байтовый массив с символами
b = StrConv(Replace$(Format$([E12], "00.0"), ",", "."), vbFromUnicode)
k = FreeFile
Open "c:\temp\MyFile.txt" For Binary Access Read Write As k
    'считываем 21 строку
For i = 1 To 21
    Line Input #k, s
Next
    'Loc(k) указывает на начало 22 строки
Put k, Loc(k) + 39, b
Close k
End Sub
Добавлено через 4 минуты
Если строки (записи) в файле фиксированной длины, то можно сразу писать в нужное место, а не считывать строки.
0
14.09.2012, 11:54
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.09.2012, 11:54
Помогаю со студенческими работами здесь

Макрос для печати определенного листа Excel
Помогите пожалуйста! Помогите написать макрос для печати заранее заданного листа. Спасибо!

Макрос для копирования данных с листа на лист с сортировкой
здравствуйте!! помогите в решении задачи. есть экселевский файл, нужен макрос для кнопки, при...

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

Макрос для применения формулы к опредленному столбцу каждого листа
Добрый день! Не могли бы Вы подсказать, как написать макрос для применения формулы к...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru