Horizontalalignment excel что это

Содержание

  1. Microsoft Office Excel: Нельзя установить свойство HorizontalAlignment клас
  2. VBA Excel. Свойства ячейки (объекта Range)
  3. Ячейка и объект Range
  4. Свойства ячейки (объекта Range)
  5. Простые примеры для начинающих
  6. Форматирование ячеек
  7. Несколько способов форматирования и обработки данных в Excel документах с помощью IS-Builder.

Microsoft Office Excel: Нельзя установить свойство HorizontalAlignment клас

(1)
🙂
буквы это конкретика
а я про теорию.
вот
_ОкноЕхс.Windows(_ВыбФ).Activate();
.
_ОкноЕхс.Range(Диапп).Select();
_ОкноЕхс.Selection.Columns.AutoFit();
_ОкноЕхс.Selection.HorizontalAlignment=1;

а аутофит отрабатывает..

(3)
🙂
да я знаю
просто 1 это то же что ..

Если видВыр=0 Тогда //установить по левому краю
Align = 1;//-1431
ИначеЕсли видВыр=2 Тогда // установить по правому краю
Align = -4152;
ИначеЕсли видВыр=1 Тогда // установить по центру
Align = -4108;
КонецЕсли;
_ОкноЕхс.Selection.HorizontalAlignment=Align;

эксель же принципиально не связывает range и horizontal alignment
..
хотя я брал код из работающего куска
но там диапазон = строка.
вот и думаю

Процедура ДеИнициализацияЭксель()
Если ПустоеЗначение(лЭксель) = 0 Тогда
лЭксель.ActiveWorkbook.Save();
лЭксель.WorkBooks.Close();
лЭксель.Quit();
лЭксель = 0;
КонецЕсли;
КонецПроцедуры

Процедура ЗапускМакроса()
scrptCtrl = СоздатьОбъект(«MSScriptControl.ScriptControl»);
scrptCtrl.Language = «vbscript»;
лКод = »
|Function ExecMacros(lApp)
|
| With lApp.Selection
| .HorizontalAlignment = -4152 ‘xlRight
| End With
|
|End Function
|»;
scrptCtrl.AddCode(лКод);
scrptCtrl.Run(«ExecMacros», лЭксель);
КонецПроцедуры

Функция ИнициализацияЭксель()
Рез = 0;
Если ПустоеЗначение(лЭксель) = 1 Тогда
Если СокрЛП(ПутьКФайлу) <> «» Тогда
Попытка
лЭксель = СоздатьОбъект(«Excel.Application»);
Исключение
Сообщить(ОписаниеОшибки(),»!»);
Сообщить(«Возможно, MS Excel не установлен на этом компьютере.»);
Возврат 0 ;
КонецПопытки;
Попытка
лЭксель.WorkBooks.Open(ПутьКФайлу);
Исключение
Предупреждение(«По указанному пути: «»» + ПутьКФайлу + «»» ничего нет. «);
лЭксель.Quit();
лЭксель = 0;
КонецПопытки;
Рез = 1;
КонецЕсли;
Иначе
Рез = 1;
КонецЕсли;
Возврат Рез;
КонецФункции

Процедура ВыбратьФайл()
Перем Имя, Каталог;
Если ФС.ВыбратьФайл(0, Имя, Каталог, «Путь к файлу Excel»,
«Файлы XLS (*.xls)|*.xls»,»*.xls») <> 1
Тогда
Возврат;
КонецЕсли;
ПутьКФайлу = СокрЛП(Каталог) + СокрЛП(Имя);
КонецПроцедуры// ВыбратьФайл()

Процедура Сформировать()
ИнициализацияЭксель();
Попытка
лТекЛист = лЭксель.WorkSheets(«Лист1»);
лТекЛист.Activate();
лТекЛист.Range(лТекЛист.Cells(1, 1), лТекЛист.Cells(10, 1)).Select();
ЗапускМакроса();
Исключение
ДеинициализацияЭксель();
Возврат;
КонецПопытки;
ДеинициализацияЭксель();
КонецПроцедуры

Вот так работает. Свойство Selection желательно не использовать, можешь захватить другие объекты кроме ячеек.

Источник

VBA Excel. Свойства ячейки (объекта Range)

Свойства ячейки, часто используемые в коде VBA Excel. Демонстрация свойств ячейки, как структурной единицы объекта Range, на простых примерах.

Ячейка и объект Range

Объект Range в VBA Excel представляет диапазон ячеек. Он (объект Range) может описывать любой диапазон, начиная от одной ячейки и заканчивая сразу всеми ячейками рабочего листа.

  • Одна ячейка – Range(«A1») .
  • Девять ячеек – Range(«A1:С3») .
  • Весь рабочий лист в Excel 2016 – Range(«1:1048576») .

В VBA Excel есть свойство Cells объекта Range, которое позволяет обратиться к одной ячейке в указанном диапазоне (возвращает объект Range в виде одной ячейки). Если в коде используется свойство Cells без указания диапазона, значит оно относится ко всему диапазону активного рабочего листа.

Примеры обращения к одной ячейке:

  • Cells(1000) , где 1000 – порядковый номер ячейки на рабочем листе, возвращает ячейку «ALL1».
  • Cells(50, 20) , где 50 – номер строки рабочего листа, а 20 – номер столбца, возвращает ячейку «T50».
  • Range(«A1:C3»).Cells(6) , где «A1:C3» – заданный диапазон, а 6 – порядковый номер ячейки в этом диапазоне, возвращает ячейку «C2».

Подробнее о том, как обратиться к ячейке, смотрите в статье: Ячейки (обращение, запись, чтение, очистка).

В этой статье мы рассмотрим свойства объекта Range, применимые, в том числе, к диапазону, состоящему из одной ячейки.

Еще надо добавить, что свойства и методы объектов отделяются от объектов точкой, как в третьем примере обращения к одной ячейке: Range(«A1:C3»).Cells(6) .

Свойства ячейки (объекта Range)

Свойство Описание
Address Возвращает адрес ячейки (диапазона).
Borders Возвращает коллекцию Borders, представляющую границы ячейки (диапазона). Подробнее…
Cells Возвращает объект Range, представляющий коллекцию всех ячеек заданного диапазона. Указав номер строки и номер столбца или порядковый номер ячейки в диапазоне, мы получаем конкретную ячейку. Подробнее…
Characters Возвращает подстроку в размере указанного количества символов из текста, содержащегося в ячейке. Подробнее…
Column Возвращает номер столбца ячейки (первого столбца диапазона). Подробнее…
ColumnWidth Возвращает или задает ширину ячейки в пунктах (ширину всех столбцов в указанном диапазоне).
Comment Возвращает комментарий, связанный с ячейкой (с левой верхней ячейкой диапазона).
CurrentRegion Возвращает прямоугольный диапазон, ограниченный пустыми строками и столбцами. Очень полезное свойство для возвращения рабочей таблицы, а также определения номера последней заполненной строки.
EntireColumn Возвращает весь столбец (столбцы), в котором содержится ячейка (диапазон). Диапазон может содержаться и в одном столбце, например, Range(«A1:A20») .
EntireRow Возвращает всю строку (строки), в которой содержится ячейка (диапазон). Диапазон может содержаться и в одной строке, например, Range(«A2:H2») .
Font Возвращает объект Font, представляющий шрифт указанного объекта. Подробнее о цвете шрифта…
HorizontalAlignment Возвращает или задает значение горизонтального выравнивания содержимого ячейки (диапазона). Подробнее…
Interior Возвращает объект Interior, представляющий внутреннюю область ячейки (диапазона). Применяется, главным образом, для возвращения или назначения цвета заливки (фона) ячейки (диапазона). Подробнее…
Name Возвращает или задает имя ячейки (диапазона).
NumberFormat Возвращает или задает код числового формата для ячейки (диапазона). Примеры кодов числовых форматов можно посмотреть, открыв для любой ячейки на рабочем листе Excel диалоговое окно «Формат ячеек», на вкладке «(все форматы)». Свойство NumberFormat диапазона возвращает значение NULL, за исключением тех случаев, когда все ячейки в диапазоне имеют одинаковый числовой формат. Если нужно присвоить ячейке текстовый формат, записывается так: Range(«A1»).NumberFormat = «@» . Общий формат: Range(«A1»).NumberFormat = «General» .
Offset Возвращает объект Range, смещенный относительно первоначального диапазона на указанное количество строк и столбцов. Подробнее…
Resize Изменяет размер первоначального диапазона до указанного количества строк и столбцов. Строки добавляются или удаляются снизу, столбцы – справа. Подробнее…
Row Возвращает номер строки ячейки (первой строки диапазона). Подробнее…
RowHeight Возвращает или задает высоту ячейки в пунктах (высоту всех строк в указанном диапазоне).
Text Возвращает форматированный текст, содержащийся в ячейке. Свойство Text диапазона возвращает значение NULL, за исключением тех случаев, когда все ячейки в диапазоне имеют одинаковое содержимое и один формат. Предназначено только для чтения. Подробнее…
Value Возвращает или задает значение ячейки, в том числе с отображением значений в формате Currency и Date. Тип данных Variant. Value является свойством ячейки по умолчанию, поэтому в коде его можно не указывать.
Value2 Возвращает или задает значение ячейки. Тип данных Variant. Значения в формате Currency и Date будут отображены в виде чисел с типом данных Double.
VerticalAlignment Возвращает или задает значение вертикального выравнивания содержимого ячейки (диапазона). Подробнее…

В таблице представлены не все свойства объекта Range. С полным списком вы можете ознакомиться не сайте разработчика.

Простые примеры для начинающих

Вы можете скопировать примеры кода VBA Excel в стандартный модуль и запустить их на выполнение. Как создать стандартный модуль и запустить процедуру на выполнение, смотрите в статье VBA Excel. Начинаем программировать с нуля.

Учтите, что в одном программном модуле у всех процедур должны быть разные имена. Если вы уже копировали в модуль подпрограммы с именами Primer1, Primer2 и т.д., удалите их или создайте еще один стандартный модуль.

Форматирование ячеек

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

Если вы запустите эту процедуру, информационное окно MsgBox будет прерывать выполнение программы и сообщать о том, что произойдет дальше, после его закрытия.

Источник

Несколько способов форматирования и обработки данных в Excel документах с помощью IS-Builder.

Опубликовано:
31 марта 2014 в 12:34

Нередко приходится сталкиваться с ситуацией, когда нужно отформатировать xls-документ непосредственно в коде. В этой статье хотелось привести несколько примеров форматирования данных. Итак, начнем.

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

  1. Выделение всего текста в ячейке
  • Data.Range(CellHL; CellBR). Font.Bold = True // жирным
  • Data.Range(CellHL; CellBR).Font.Italic = True // курсивом
  • Data.Range(CellHL; CellBR). Font.Underline = True //подчеркиванием
  1. Выделение определенного слова в тексте ячейки
  1. Объединение ячеек
  1. Установка размера шрифта
  1. Установка цвета текста
  1. Горизонтальное выравнивание ячейки

Режим выравнивания

Константа в Excel

Значение в ISBL

По центру выделения

По правому краю

  1. Вертикальноевыравнивание ячейки

Режим выравнивания

Константа в Excel

Значение в ISBL

По нижнему краю

По верхнему краю

  1. Отступ
  1. Установка темы шрифта
  1. Установка ширины ячеек
  1. Установка высоты ячеек
  1. Установка границы ячейки и тип линии границы

Значения константы XlBordersIndex:

Расположение линии

Значение в Excel

Константа в ISBL

Линия по диагонали сверху – вниз

Линия по диагонали снизу – вверх

Линия, обрамляющая диапазон слева

Линия, обрамляющая диапазон сверху

Линия, обрамляющая диапазон снизу

Линия, обрамляющая диапазон справа

Все вертикальные линии внутри диапазона

Все горизонтальные линии внутри диапазона

Свойство LineStyle (тип линии) может принимать значения:

Тип линии

Значение в Excel

Константа в ISBL

(_._._._._) В виде тире и точек

(_.._.._..) В виде тире и двойных точек

(=====) В виде двойной линии

(/././././) В виде наклонной пунктирной

  1. Установка толщины линии границы

Значения константы XlBorderWeight

Толщина линии

Значение в Excel

Константа в ISBL

  1. Установка цвета линии границы

где Index:

  1. Установка отметки напротив пункта «переносить по словам»
  1. Отключение/включение режима показа предупреждений
  1. Сохранение книги вpdf формат
  • 0 — значение Microsoft.Office.Interop.Excel.XlFixedFormatType, указывающее, сохранять книгу в формате PDF;
  • Filename — полный путь к новому файлу формата PDF;
  • 1 — значение Microsoft.Office.Interop.Excel.XlFixedFormatQuality, определяющее качество экспортируемого файла;
  • IncludeDocProperties — значение true, чтобы включить свойства документа в новый экспортированный файл; в противном случае — значение false;
  • IgnorePrintAreas — значение true, чтобы пропускать области печати, установленные при экспорте; в противном случае — false.
  1. Построениесводнойтаблицы

// Вставка сводной таблицы

  • 1 — значение константы xlPivotTableSourceType;
  • SourceData – данные для нового сводной таблицы (диапазон ячеек);
  • TableDestination — диапазон на листе, где будет помещена итоговая Сводная таблица
  • TableName — имя новой Сводной таблицы

где NameColumn – название колонки, которое совпадает с именем колонки в шапке таблицы с листа исходных данных.

Значения констант параметра Функции:

0 – сумма; 1 – количество; 2 – среднее; 3 – максимум; 4 – минимум.

  1. Вставка гиперссылки на запись справочника в ячейку

В дальнейшем планирую написать аналогичную статью для MS Word.

Источник

9 / 9 / 1

Регистрация: 22.11.2009

Сообщений: 174

1

Как сделать выравнивание текста в ячейке

16.02.2012, 21:05. Показов 52401. Ответов 8


Студворк — интернет-сервис помощи студентам

Мпа, добрый вечер!

Скажите, пожалуйста, как сделать выравнивание текста в ячейке средствами VBA? Какое свойство за это отвечает?

Заранее спасибо за ответ!



0



Watcher_1

356 / 162 / 27

Регистрация: 21.06.2011

Сообщений: 350

16.02.2012, 21:23

2

Visual Basic
1
2
3
Range("A1").HorizontalAlignment = xlLeft 'лево
Range("A1").HorizontalAlignment = xlCenter ' центр
Range("A1").HorizontalAlignment = xlRight ' право



2



Sasha_Smirnov

5561 / 1367 / 150

Регистрация: 08.02.2009

Сообщений: 4,107

Записей в блоге: 30

16.02.2012, 21:24

3

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Sub Макрос1()
'
' Макрос1 Макрос
'
    Range("C5").Select 'выделенная ячейка таблицы Excel (с текстом)
'
    With Selection
        .HorizontalAlignment = xlCenter     'текст по центру
        .VerticalAlignment = xlBottom       'выровнен по вертикали вниз
    End With
    
    With Selection
        .HorizontalAlignment = xlLeft       'текст влево (так по умолчанию)
    End With
    
    With Selection
        .HorizontalAlignment = xlRight       'текст вправо
    End With
End Sub

А знаете как я сделал… Записал макрос и посмотрел по Alt-F11. Лишнее убрал.

А теперь таким же макаром — для ворда.

Подсказка: дежим зажатой клавишу Ctrl и жмём буквы: У (она же E) (по центру), R (вправо), L (влево).

А вот и

Visual Basic
1
2
3
4
5
Sub Макрос1()
    Selection.ParagraphFormat.Alignment = wdAlignParagraphCenter    'по центру
    Selection.ParagraphFormat.Alignment = wdAlignParagraphRight     'вправо
    Selection.ParagraphFormat.Alignment = wdAlignParagraphLeft      'догадайтесь сами
End Sub



2



9 / 9 / 1

Регистрация: 22.11.2009

Сообщений: 174

16.02.2012, 21:27

 [ТС]

4

Ура, спасибо!!!

Sasha_Smirnov, Слушайте, Вы гений!!! Молодец, отличная идея… Супер!



1



5561 / 1367 / 150

Регистрация: 08.02.2009

Сообщений: 4,107

Записей в блоге: 30

17.02.2012, 00:23

5

Особо «гениален» глагол дежим… этакое дежавю.

Вообще-то я догадывался, что делаю «открытие Америки», но способ совершенно естественный.



1



avenger24

1 / 1 / 0

Регистрация: 02.04.2015

Сообщений: 84

14.04.2016, 12:33

6

Sasha_Smirnov, а не подскажешь как выровнить в Wordе по вертикали по центру ?

Visual Basic
1
2
3
4
5
Sub Макрос1()
    Selection.ParagraphFormat.Alignment = wdAlignParagraphCenter    'по центру
    Selection.ParagraphFormat.Alignment = wdAlignParagraphRight     'вправо
    Selection.ParagraphFormat.Alignment = wdAlignParagraphLeft      'догадайтесь сами
End Sub



0



Shersh

Заблокирован

14.04.2016, 12:59

7

Visual Basic
1
Selection.Cells.VerticalAlignment = wdCellAlignVerticalCenter

?



0



0 / 0 / 0

Регистрация: 22.12.2011

Сообщений: 212

25.05.2016, 09:17

8

а если надо по горизонтали, в cell.horizontalAligment нету



0



Shersh

Заблокирован

25.05.2016, 09:23

9

Цитата
Сообщение от ramzes2012
Посмотреть сообщение

cell.horizontalAligment нету

А такое может есть —
cellS.HorizontalAligNment
?



0



title keywords f1_keywords ms.prod api_name ms.assetid ms.date ms.localizationpriority

CellFormat.HorizontalAlignment property (Excel)

vbaxl10.chm676080

vbaxl10.chm676080

excel

Excel.CellFormat.HorizontalAlignment

396eb959-379d-abb4-96b8-e41f5ebf8125

04/16/2019

medium

CellFormat.HorizontalAlignment property (Excel)

Returns or sets a Variant value that represents the horizontal alignment for the specified object.

Syntax

expression.HorizontalAlignment

expression A variable that represents a CellFormat object.

Remarks

The value of this property can be set to one of the XlHAlign constants.

Some of these constants may not be available to you, depending on the language support (U.S. English, for example) that you’ve selected or installed.

[!includeSupport and feedback]

Понравилась статья? Поделить с друзьями:
  • Horizontal to vertical in word
  • Horizontal lines in word
  • How do i link files in excel
  • Hopefully not a word
  • How do i link cells on excel