Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - VBA

Страница: 1 |

 

  Вопрос: Данные из Excel в таблицу Word'a Добавлено: 01.09.05 17:17  

Автор вопроса:  DonPedro
Возникла такая задача - надо штрихкоды нарисовать. В листе Екселя в столбце цифры -это штрих код, его надо отобразить в виде черточек и распечатаь. Использую компоненту ActiveBarcode. Скачал с ихнего сайта образец и немного переделал- в документе Word строится таблица и в каждую ячейку таблицы вставляется OLE объект со штрих-кодом

Set oDoc = ActiveDocument
Set oTable = oDoc.Tables.Add( _
    Range:=oDoc.Range(Start:=0, End:=0), NumRows:=20, _
    NumColumns:=4)
  oTable.Borders.OutsideLineStyle = False
  oTable.Borders.InsideLineStyle = False
 
For i = 1 To 5
'
  Selection.ParagraphFormat.Alignment = wdAlignParagraphCenter
  Set ab = Selection.InlineShapes.AddOLEObject(ClassType:="BARCODE.BarcodeCtrl.1", FileName:="", LinkToFile:=False, DisplayAsIcon:=False)
  ab.Width = 90
  ab.Height = 36.75
  
  With ab.OLEFormat
    .Activate
    Set ab = .Object
  End With
ab.Font.Size = 8
ab.Text = 987698769812
  Selection.MoveRight Unit:=wdCell
Next i
End Sub
В Ворде все работает
А теперь надо эту операцию проделать из листа Екселя, где в ячейках храняться сами цифры штрих-кодов. Т.е из Екселя открыть документ Ворда, вставить таблицу и в таблицу вставить OLE объекты.
Делаю по аналогии И тот-то и проблема:

Dim Wd As Object
Set Wd = CreateObject("Word.Application")
Wd.Documents.Add
Wd.Visible = True
Set oDoc = Wd.ActiveDocument
Set oTable = oDoc.Tables.Add( _
    Range:=oDoc.Range(Start:=0, End:=0), NumRows:=KolStrok, _
    NumColumns:=4)
  oTable.Borders.OutsideLineStyle = False
  oTable.Borders.InsideLineStyle = False
  
таблицу он в Ворде рисует

  oDoc.Selection.ParagraphFormat.Alignment = wdAlignParagraphCenter
- вот на этом месте Ексель ругается и говорит что объет не поддерживает такой атрибут или метод.
И дальше не работает....
 Set ab = oDoc.Selection.InlineShapes.AddOLEObject(ClassType:="BARCODE.BarcodeCtrl.1", Filename:="", LinkToFile:=False, DisplayAsIcon:=False)
....
Вот и вопрос к уважаемым знатокам VBA как тут надо правильно написать чтобы все работало?

Ответить

  Ответы Всего ответов: 1  

Номер ответа: 1
Автор ответа:
 el-paso



Вопросов: 3
Ответов: 164
 Профиль | | #1 Добавлено: 01.09.05 22:59
Всё верно. У объекта Document нет свойства Selection. Воспользуйся глобальным Selection.

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам