Как заставить работать макросы, написанные в excel 2003, для коррекции данных в word 2007? - VB

Узнай цену своей работы

Формулировка задачи:

ситуация следующая макросы, написанные в excel 2003 для коррекции данных в word 2003 все открывается правится, сохраняется, НО вот на компах где установлены excel 2007 и word 2007, исходный файл excel 2003 открывается в excel 2007, при запуске макроса нужный файл word(написанные в word 2003) открывается word 2007, НО в нем ничегошеньки не правится
Листинг программы
  1. If Имя <> "" And Смена0 = Смена Then
  2. On Error Resume Next
  3. Set objWrod = GetObject(, "Word.Application")
  4. If objWrod Is Nothing Then Set objWrod = CreateObject("Word.Application")
  5. Set objDoc = objWrod.Documents.Open(КаталогОткрываемойКниги & "" & Имя & ".doc") - ОТКРЫВАЕТСЯ
  6. objWrod.Visible = True - ВИЗУАЛИЗИРУЕТСЯ
  7. objWrod.Activate - СТАНОВИТСЯ АКТИВНЫМ
  8. И С ЭТОГО МОМЕНТА В word 2007 НИЧЕГОШЕНЬКИ НЕ ПРАВИТСЯ
  9. objWrod.Documents(Имя).ActiveWindow.ActivePane.View.Zoom.PageFit = wdPageFitFullPage
  10. objWrod.Documents(Имя).Tables(1).Cell(1, 1).Range.Text = УведомлениеДата
  11. objWrod.Documents(Имя).Tables(2).Cell(1, 1).Range.Text = РаботаДата
  12. objWrod.Documents(Имя).Tables(2).Cell(1, 2).Range.Text = РаботаВремя
  13. objWrod.Documents(Имя).Tables(2).Columns.AutoFit
  14. objWrod.Documents(Имя).Tables(3).Cell(3, 1).Range.Text = РаботаДата
  15. objWrod.Documents(Имя).Tables(3).Cell(3, 2).Range.Text = РаботаВремя
  16. objWrod.Documents(Имя).Tables(3).Columns.AutoFit
  17. objWrod.Documents(Имя).Tables(4).Cell(1, 2).Range.Text = РаботаДата
  18. objWrod.Documents(Имя).Tables(4).Columns.AutoFit
  19. objWrod.Documents(Имя).Tables(5).Cell(1, 1).Range.Text = РаботаВремя
  20. objWrod.Documents(Имя).Tables(6).Cell(1, 5).Range.Text = УведомлениеДата
  21. Set objDoc = Nothing
  22. Set objWrod = Nothing
ЧЕЛОВЕКИ ДОБРЫЕ ПОДСКАЖИТЕ ГДЕ ЗАГВОЗДКА

Решение задачи: «Как заставить работать макросы, написанные в excel 2003, для коррекции данных в word 2007?»

textual
Листинг программы
  1. Private Sub Form_Load()
  2.     Debug.Assert MakeTrue(inIDE)
  3.     BuggedRoutine
  4. end sub
  5.  
  6. Sub BuggedRoutine()
  7.     On Error GoTo ErrorHandler
  8.  
  9.     'ваш код (хороший или плохой)
  10.    dim r&: r = 1\0
  11.  
  12.     Exit Sub
  13. ErrorHandler:
  14.     debug.? err, "BuggedRoutine"
  15.     If inIDE Then Stop: Resume Next
  16. end sub
  17.  
  18. Public Function MakeTrue(ByRef bvar As Boolean) As Boolean
  19.     bvar = True: MakeTrue = True
  20. End Function

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4.067 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы