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

таблицы, Название русунка, Маркированный многоуровневый (-)
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("Название Таблицы").LanguageID = wdRussian
ActiveDocument.Styles("Название Таблицы").NoProofing = False ActiveDocument.Styles("Название Таблицы").NoProofing = False
ActiveDocument.Styles("Название Таблицы").Frame.Delete 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 End Sub

View File

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