IMHO.WS

IMHO.WS (http://www.imho.ws/index.php)
-   Программирование (http://www.imho.ws/forumdisplay.php?f=40)
-   -   VBA Excel (http://www.imho.ws/showthread.php?t=16729)

AlexZh 28.11.2002 19:10

VBA Excel
 
Всем привет!
В Excel-е при промощи Мастера записаал следующий макрос:
Range("A1:B1").Select
With Selection
.HorizontalAlignment = xlCenter
End With

т.е отцентрировал положение текста в ячейке.

А теперь хочу сделать тоже самое, используя Excel, как OLE сервер.
Проблема в том, что нужно вместо xlCenter подставить число, которое этой переменной соответствует.
Какое число подставить и где можно посмотреть значения переменных типа xlCenter, xlLeft и т.д
Спасибо.

corgi 01.12.2002 20:28

Const xlCenter = -4108 (&HFFFFEFF4)
Const xlLeft = -4131 (&HFFFFEFDD)
Const xlRight = -4152 (&HFFFFEFC8)
В Excele запускаешь редактор Visual basic и там нажимаешь f2 или зпускаешь object browser
В разделе constants бедет то что тебе надо

YFred 20.12.2004 14:45

Люди
 
Пишу макрос в Excel задача следующая:
Есть база данных в Excel и есть обновление базы в *.txt необходимо добавить строки из txt в Excel, но не все а только те которых нет в базе.
(сравнение ведется по 2-м столбцам).
Я начал делать, так
1) открыл txt - Workbooks.OpenText Filename:="....и т.д.
2) привел к нужному виду (как в базе)
3) теперь необходимо осуществить проверку и вставить данные в базу :( , но я не пойму как работать одновременно с 2-мя книгами в Excel

например Rows(1).delete обращение по умолчанию, а как обратиться например Книга2.Rows(1).delete

Надеюсь не сильно запутал. Помогите пожалуйста кто может :help:

EvroStandart 21.12.2004 15:26

Цитата:

YFred:
а как обратиться например Книга2.Rows(1).delete
Sheets("Sheet1").Range("C9").Value
типа такого.

YFred 21.12.2004 16:33

Всем спасибо разобрался сам. :yees:

Browin 23.03.2005 08:27

Не могу решить следующую проблему:
Имеется диаграмма. Необходимо удалить все ряды данных, т.е. SeriesCollection. Но у меня никак не получается узнать количество этих рядов без активации (выделения) текущего Листа и Диаграммы, т.е. нижеследующее работает

ActiveSheet.ChartObjects(5).Activate
c = ActiveChart.SeriesCollection.Count

а это нет:

c = ActiveSheet.ChartObjects(5).SeriesCollection.Count

Если обращаться напрямую:

c = Sheets(ndiag).ChartObjects(5).SeriesCollection.Count

получаю следующую ошибку:

http://dziman.nm.ru/files/Pic15.png

Почему? Может нужно приведение типов сделать?

LightImage 26.03.2005 09:12

а если c = Sheets(ndiag).Charts(5).SeriesCollection.Count ?

fresh wind 04.04.2005 12:26

Visual Basic для Excel - с чего начать?
 
Visual Basic для Excel - с чего начать? :( То есть нужно разобраться в самых азах. Подкиньте ссылки на литературу.
Спасибо

LightImage 05.04.2005 12:13

fresh wind
Хелп стандартный, очень неплохо написано ;) Рекомендую, сам только хелп пользую

fedalal 08.04.2005 12:42

удобнее "учиться" с помощью записанных макросов. Там есть кнопочка записать макрос. Записываешь, делаешь что нибудь в excel а потом смотришь, какой он код на VB сгенерил. Очень удобно для обучения (сам в свое время так делал, правда давно это было)


Часовой пояс GMT +4, время: 04:50.

Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.