Макрос добавления стилей. Основной текст, Название

таблицы, Название русунка, Маркированный многоуровневый (-)
This commit is contained in:
2025-06-14 13:50:45 +03:00
parent ac027d6283
commit 71f706c2cf
3 changed files with 386 additions and 3 deletions

Binary file not shown.

View File

@@ -559,6 +559,379 @@ ActiveDocument.Styles.Add Name:="Название Таблицы", Type:= _
ActiveDocument.Styles("Название Таблицы").LanguageID = wdRussian
ActiveDocument.Styles("Название Таблицы").NoProofing = False
ActiveDocument.Styles("Название Таблицы").Frame.Delete
'Добавление стиля маркированного списка
ActiveDocument.Styles.Add Name:="ГОСТ Список маркер (-)", Type:= _
wdStyleTypeParagraph
ActiveDocument.Styles("ГОСТ Список маркер (-)").AutomaticallyUpdate = _
False
With ActiveDocument.Styles("ГОСТ Список маркер (-)").Font
.Name = "Arial"
.Size = 12
.Bold = False
.Italic = False
.Underline = wdUnderlineNone
.UnderlineColor = wdColorAutomatic
.StrikeThrough = False
.DoubleStrikeThrough = False
.Outline = False
.Emboss = False
.Shadow = False
.Hidden = False
.SmallCaps = False
.AllCaps = False
.Color = wdColorAutomatic
.Engrave = False
.Superscript = False
.Subscript = False
.Scaling = 100
.Kerning = 0
.Animation = wdAnimationNone
.Ligatures = wdLigaturesNone
.NumberSpacing = wdNumberSpacingDefault
.NumberForm = wdNumberFormDefault
.StylisticSet = wdStylisticSetDefault
.ContextualAlternates = 0
End With
With ActiveDocument.Styles("ГОСТ Список маркер (-)").ParagraphFormat
.LeftIndent = CentimetersToPoints(0)
.RightIndent = CentimetersToPoints(0)
.SpaceBefore = 0
.SpaceBeforeAuto = False
.SpaceAfter = 0
.SpaceAfterAuto = False
.LineSpacingRule = wdLineSpace1pt5
.Alignment = wdAlignParagraphJustify
.WidowControl = True
.KeepWithNext = False
.KeepTogether = False
.PageBreakBefore = False
.NoLineNumber = False
.Hyphenation = True
.FirstLineIndent = CentimetersToPoints(1.5)
.OutlineLevel = wdOutlineLevelBodyText
.CharacterUnitLeftIndent = 0
.CharacterUnitRightIndent = 0
.CharacterUnitFirstLineIndent = 0
.LineUnitBefore = 0
.LineUnitAfter = 0
.MirrorIndents = False
.TextboxTightWrap = wdTightNone
End With
ActiveDocument.Styles("ГОСТ Список маркер (-)"). _
NoSpaceBetweenParagraphsOfSameStyle = True
ActiveDocument.Styles("ГОСТ Список маркер (-)").ParagraphFormat.TabStops. _
ClearAll
With ActiveDocument.Styles("ГОСТ Список маркер (-)").ParagraphFormat
With .Shading
.Texture = wdTextureNone
.ForegroundPatternColor = wdColorAutomatic
.BackgroundPatternColor = wdColorAutomatic
End With
.Borders(wdBorderLeft).LineStyle = wdLineStyleNone
.Borders(wdBorderRight).LineStyle = wdLineStyleNone
.Borders(wdBorderTop).LineStyle = wdLineStyleNone
.Borders(wdBorderBottom).LineStyle = wdLineStyleNone
With .Borders
.DistanceFromTop = 1
.DistanceFromLeft = 4
.DistanceFromBottom = 1
.DistanceFromRight = 4
.Shadow = False
End With
End With
ActiveDocument.Styles("ГОСТ Список маркер (-)").LanguageID = wdEnglishUS
ActiveDocument.Styles("ГОСТ Список маркер (-)").NoProofing = False
ActiveDocument.Styles("ГОСТ Список маркер (-)").Frame.Delete
Selection.MoveUp Unit:=wdLine, Count:=4
Selection.MoveDown Unit:=wdLine, Count:=2
Selection.MoveUp Unit:=wdLine, Count:=3
Selection.MoveLeft Unit:=wdCharacter, Count:=27
Selection.MoveDown Unit:=wdLine, Count:=10, Extend:=wdExtend
With ListGalleries(wdOutlineNumberGallery).ListTemplates(1).ListLevels(1)
.NumberFormat = "-"
.TrailingCharacter = wdTrailingSpace
.NumberStyle = wdListNumberStyleBullet
.NumberPosition = CentimetersToPoints(1.25)
.Alignment = wdListLevelAlignLeft
.TextPosition = CentimetersToPoints(0)
.TabPosition = wdUndefined
.ResetOnHigher = 0
.StartAt = 1
With .Font
.Bold = wdUndefined
.Italic = wdUndefined
.StrikeThrough = wdUndefined
.Subscript = wdUndefined
.Superscript = wdUndefined
.Shadow = wdUndefined
.Outline = wdUndefined
.Emboss = wdUndefined
.Engrave = wdUndefined
.AllCaps = wdUndefined
.Hidden = wdUndefined
.Underline = wdUndefined
.Color = wdUndefined
.Size = wdUndefined
.Animation = wdUndefined
.DoubleStrikeThrough = wdUndefined
.Name = "Arial"
End With
.LinkedStyle = "ГОСТ Список маркер (-)"
End With
With ListGalleries(wdOutlineNumberGallery).ListTemplates(1).ListLevels(2)
.NumberFormat = "-"
.TrailingCharacter = wdTrailingSpace
.NumberStyle = wdListNumberStyleBullet
.NumberPosition = CentimetersToPoints(2.5)
.Alignment = wdListLevelAlignLeft
.TextPosition = CentimetersToPoints(1.25)
.TabPosition = wdUndefined
.ResetOnHigher = 1
.StartAt = 1
With .Font
.Bold = wdUndefined
.Italic = wdUndefined
.StrikeThrough = wdUndefined
.Subscript = wdUndefined
.Superscript = wdUndefined
.Shadow = wdUndefined
.Outline = wdUndefined
.Emboss = wdUndefined
.Engrave = wdUndefined
.AllCaps = wdUndefined
.Hidden = wdUndefined
.Underline = wdUndefined
.Color = wdUndefined
.Size = wdUndefined
.Animation = wdUndefined
.DoubleStrikeThrough = wdUndefined
.Name = "Arial"
End With
.LinkedStyle = ""
End With
With ListGalleries(wdOutlineNumberGallery).ListTemplates(1).ListLevels(3)
.NumberFormat = "-"
.TrailingCharacter = wdTrailingSpace
.NumberStyle = wdListNumberStyleBullet
.NumberPosition = CentimetersToPoints(3.75)
.Alignment = wdListLevelAlignLeft
.TextPosition = CentimetersToPoints(2.5)
.TabPosition = wdUndefined
.ResetOnHigher = 2
.StartAt = 1
With .Font
.Bold = wdUndefined
.Italic = wdUndefined
.StrikeThrough = wdUndefined
.Subscript = wdUndefined
.Superscript = wdUndefined
.Shadow = wdUndefined
.Outline = wdUndefined
.Emboss = wdUndefined
.Engrave = wdUndefined
.AllCaps = wdUndefined
.Hidden = wdUndefined
.Underline = wdUndefined
.Color = wdUndefined
.Size = wdUndefined
.Animation = wdUndefined
.DoubleStrikeThrough = wdUndefined
.Name = "Arial"
End With
.LinkedStyle = ""
End With
With ListGalleries(wdOutlineNumberGallery).ListTemplates(1).ListLevels(4)
.NumberFormat = "-"
.TrailingCharacter = wdTrailingSpace
.NumberStyle = wdListNumberStyleBullet
.NumberPosition = CentimetersToPoints(5)
.Alignment = wdListLevelAlignLeft
.TextPosition = CentimetersToPoints(3.75)
.TabPosition = wdUndefined
.ResetOnHigher = 3
.StartAt = 1
With .Font
.Bold = wdUndefined
.Italic = wdUndefined
.StrikeThrough = wdUndefined
.Subscript = wdUndefined
.Superscript = wdUndefined
.Shadow = wdUndefined
.Outline = wdUndefined
.Emboss = wdUndefined
.Engrave = wdUndefined
.AllCaps = wdUndefined
.Hidden = wdUndefined
.Underline = wdUndefined
.Color = wdUndefined
.Size = wdUndefined
.Animation = wdUndefined
.DoubleStrikeThrough = wdUndefined
.Name = "Arial"
End With
.LinkedStyle = ""
End With
With ListGalleries(wdOutlineNumberGallery).ListTemplates(1).ListLevels(5)
.NumberFormat = "-"
.TrailingCharacter = wdTrailingSpace
.NumberStyle = wdListNumberStyleBullet
.NumberPosition = CentimetersToPoints(6.25)
.Alignment = wdListLevelAlignLeft
.TextPosition = CentimetersToPoints(5)
.TabPosition = wdUndefined
.ResetOnHigher = 4
.StartAt = 1
With .Font
.Bold = wdUndefined
.Italic = wdUndefined
.StrikeThrough = wdUndefined
.Subscript = wdUndefined
.Superscript = wdUndefined
.Shadow = wdUndefined
.Outline = wdUndefined
.Emboss = wdUndefined
.Engrave = wdUndefined
.AllCaps = wdUndefined
.Hidden = wdUndefined
.Underline = wdUndefined
.Color = wdUndefined
.Size = wdUndefined
.Animation = wdUndefined
.DoubleStrikeThrough = wdUndefined
.Name = "Arial"
End With
.LinkedStyle = ""
End With
With ListGalleries(wdOutlineNumberGallery).ListTemplates(1).ListLevels(6)
.NumberFormat = "-"
.TrailingCharacter = wdTrailingSpace
.NumberStyle = wdListNumberStyleBullet
.NumberPosition = CentimetersToPoints(7.5)
.Alignment = wdListLevelAlignLeft
.TextPosition = CentimetersToPoints(6.25)
.TabPosition = wdUndefined
.ResetOnHigher = 5
.StartAt = 1
With .Font
.Bold = wdUndefined
.Italic = wdUndefined
.StrikeThrough = wdUndefined
.Subscript = wdUndefined
.Superscript = wdUndefined
.Shadow = wdUndefined
.Outline = wdUndefined
.Emboss = wdUndefined
.Engrave = wdUndefined
.AllCaps = wdUndefined
.Hidden = wdUndefined
.Underline = wdUndefined
.Color = wdUndefined
.Size = wdUndefined
.Animation = wdUndefined
.DoubleStrikeThrough = wdUndefined
.Name = "Arial"
End With
.LinkedStyle = ""
End With
With ListGalleries(wdOutlineNumberGallery).ListTemplates(1).ListLevels(7)
.NumberFormat = "-"
.TrailingCharacter = wdTrailingSpace
.NumberStyle = wdListNumberStyleBullet
.NumberPosition = CentimetersToPoints(8.75)
.Alignment = wdListLevelAlignLeft
.TextPosition = CentimetersToPoints(7.5)
.TabPosition = wdUndefined
.ResetOnHigher = 6
.StartAt = 1
With .Font
.Bold = wdUndefined
.Italic = wdUndefined
.StrikeThrough = wdUndefined
.Subscript = wdUndefined
.Superscript = wdUndefined
.Shadow = wdUndefined
.Outline = wdUndefined
.Emboss = wdUndefined
.Engrave = wdUndefined
.AllCaps = wdUndefined
.Hidden = wdUndefined
.Underline = wdUndefined
.Color = wdUndefined
.Size = wdUndefined
.Animation = wdUndefined
.DoubleStrikeThrough = wdUndefined
.Name = "Arial"
End With
.LinkedStyle = ""
End With
With ListGalleries(wdOutlineNumberGallery).ListTemplates(1).ListLevels(8)
.NumberFormat = "-"
.TrailingCharacter = wdTrailingSpace
.NumberStyle = wdListNumberStyleBullet
.NumberPosition = CentimetersToPoints(10)
.Alignment = wdListLevelAlignLeft
.TextPosition = CentimetersToPoints(8.75)
.TabPosition = wdUndefined
.ResetOnHigher = 7
.StartAt = 1
With .Font
.Bold = wdUndefined
.Italic = wdUndefined
.StrikeThrough = wdUndefined
.Subscript = wdUndefined
.Superscript = wdUndefined
.Shadow = wdUndefined
.Outline = wdUndefined
.Emboss = wdUndefined
.Engrave = wdUndefined
.AllCaps = wdUndefined
.Hidden = wdUndefined
.Underline = wdUndefined
.Color = wdUndefined
.Size = wdUndefined
.Animation = wdUndefined
.DoubleStrikeThrough = wdUndefined
.Name = "Arial"
End With
.LinkedStyle = ""
End With
With ListGalleries(wdOutlineNumberGallery).ListTemplates(1).ListLevels(9)
.NumberFormat = "-"
.TrailingCharacter = wdTrailingSpace
.NumberStyle = wdListNumberStyleBullet
.NumberPosition = CentimetersToPoints(11.25)
.Alignment = wdListLevelAlignLeft
.TextPosition = CentimetersToPoints(10)
.TabPosition = wdUndefined
.ResetOnHigher = 8
.StartAt = 1
With .Font
.Bold = wdUndefined
.Italic = wdUndefined
.StrikeThrough = wdUndefined
.Subscript = wdUndefined
.Superscript = wdUndefined
.Shadow = wdUndefined
.Outline = wdUndefined
.Emboss = wdUndefined
.Engrave = wdUndefined
.AllCaps = wdUndefined
.Hidden = wdUndefined
.Underline = wdUndefined
.Color = wdUndefined
.Size = wdUndefined
.Animation = wdUndefined
.DoubleStrikeThrough = wdUndefined
.Name = "Arial"
End With
.LinkedStyle = ""
End With
ListGalleries(wdOutlineNumberGallery).ListTemplates(1).Name = ""
Selection.Range.ListFormat.ApplyListTemplateWithLevel ListTemplate:= _
ListGalleries(wdOutlineNumberGallery).ListTemplates(1), _
ContinuePreviousList:=False, ApplyTo:=wdListApplyToWholeList, _
DefaultListBehavior:=wdWord10ListBehavior
End Sub

View File

@@ -19,13 +19,23 @@ C:\Users\[ИмяПользователя]\AppData\Roaming\Microsoft\Word\STARTUP
2. Вставка штампов целиком и частями
3. Добавления ряда интересных функций из addin_wordtools
4. Добавления ряда интересных функций из addin_macrotoolsword
5. Добавление подготовленных стилей в документ, чтобы форматирование картинки или таблицы происходило корректно. Изменение текущих стилей документа. Или приведение стилей к определенному шаблону. Название стилей в виде "ГОСТ Основной текст", "ГОСТ Название рисунка", итд.
5. Добавление подготовленных стилей в документ, чтобы форматирование картинки или таблицы происходило корректно. Изменение текущих стилей документа. Или приведение стилей к определенному шаблону. Название стилей в виде "ГОСТ Основной текст", "ГОСТ Название рисунка", итд. Необходимые стили:
5.1. Основной текст - ок
5.2. Название рисунка - ок
5.3. Название таблицы - ок
5.4. Нумерованый многоуровневый список
5.5. Маркированый многоуровневый список - ок
5.6. Обычный текст. Шрифт, размер, цвет текста, без абзацного отступа. На его основе должны строится остальные стили.
## Планируемые доработки скриптов
1. Форматирование таблицы - автоматическое определение формата листа и подгон ширины под формат листа.
2. Добавить в форматирование таблицы вставку названия
3. Применение стиля к насзванию рисунка и названию таблицы
## Выполненные доработки
## Changelog
1. Добавлена функция форматирования картинки со вставкой названия. Размер картинки уменьшается до определенного размера, который зависит от формата (а3/а4) и ориентации листа (портретный/альбомный);
2. Вставка вертикального А4 как нового раздела после курсора. Релизовано как SplitButton
3. Вставка горизонтального листа. После вставки горинзонтального листа следующие страницы превращаются также в горизонтальные. Надо сделать так чтобы вставлялся только один горизонтальный лист как раздел, а следующие разделы шли без изменения.
3. Вставка горизонтального листа. После вставки горинзонтального листа следующие страницы превращаются также в горизонтальные. Надо сделать так чтобы вставлялся только один горизонтальный лист как раздел, а следующие разделы шли без изменения.
4. Добавлена вставка стилей: Основной текст, Название руисунка, Название таблици, Маркированный многоуровневый (-)