Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
0 / 0 / 0
Регистрация: 12.04.2016
Сообщений: 26
1

Как сделать документ на основание заявления VBA

21.04.2016, 02:57. Показов 1192. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите сделать так что бы к кому в заявление было в правом верхнем углу
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
Public Sub DocWrite(sPovod As String, sFio As String, sOtvIsp As String)
    Dim oWord As Word.Application
    Dim oDoc As Word.Document
    Set oWord = CreateObject("Word.Application")
    Set oDoc = oWord.Documents.Add()
    oWord.Visible = True
    oDoc.Activate
    With oWord.Selection
    .TypeText "Директору" & Space(100)
    .TypeText "Иванову Иван Ивановичу" & Space (100)
    .TypeText vbCrLf
    .TypeText vbCrLf
    .TypeText "Заявление"
    .Style = " Заголовок 1"
    .ParagraphFormat.Alignment = wdAlignParagraphCenter
    .TypeText vbCrLf
    .Style = "обычный"
    .TypeText vbCrLf
    .TypeText "" & Space(150) & Date
    .TypeText vbCrLf
    .TypeText vbCrLf
    .TypeText vbCrLf
    .TypeText "Я " & sFio & _
    " Обнаружил(а) " & sPovod & ":"
    .TypeText vbCrLf
    .TypeText vbCrLf
    .TypeText vbCrLf
    .TypeText vbCrLf
    .TypeText vbCrLf
    .TypeText vbCrLf
    .TypeText vbCrLf
    .TypeText vbCrLf
    .TypeText "Директор" & vbTab & _
    vbTab & "Иванов И.И."
    .ParagraphFormat.Alignment = wdAlignParagraphCenter
    .TypeParagraph
    .TypeText vbCrLf
    .TypeText vbCrLf
    .ParagraphFormat.Alignment = wdAlignParagraphLeft
    .TypeText Text:=("Отв.исполнитель " & sOtvIsp)
    .TypeParagraph
    End With
 
End Sub
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.04.2016, 02:57
Ответы с готовыми решениями:

Как добавить ссылку на документ-основание в другой документ?
Здравствуйте! У меня учебная задача, делаю свою легонькую конфигурацию. Есть документ...

1с 7.7 как в журнале РН, сразу открывать значение в графе "документ основание"
Добрый день, имеется 1с 7.7 и журнал расходных накладных. При двойном нажатии у нас естественно...

Конвертация. добавить документ основание
Обмен УНФ 1.6 БП 3.0 Источник - акт выполненных работ, приемник - реализация услуг. в акте есть...

Программно указать документ-основание в восьмерке
Не подскажете? А то я не нашел в документации. Или может плохо искал?

2
Модератор
Эксперт MS Access
11960 / 4828 / 779
Регистрация: 07.08.2010
Сообщений: 14,140
Записей в блоге: 4
21.04.2016, 10:00 2
объединила вашу поделку со своей(невидимые таблицы) --для картинки --границы показала

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
Dim oWord As Word.Application
Dim oDoc As Word.Document
Dim otbl As Word.Table
 
Dim j1, j1k, s1, s2
Sub W21()
DocWrite "жалоба", "Петрова М.М.", "Семин Д.Д."
End Sub
Public Sub DocWrite(sPovod As String, sFio As String, sOtvIsp As String)
 
Set oWord = CreateObject("Word.Application")
Set oDoc = oWord.Documents.Add()
oWord.Visible = True
oDoc.Activate
tab58 4, "80,10,80"
With otbl
With .Cell(1, 3).Range
    .Bold = True
    .Font.Size = 16
    .Text = "Директору"
End With
.Cell(2, 3).Range.Text = "Иванову Иван Ивановичу"
 
.Cell(4, 1).Select
oWord.Selection.MoveDown Unit:=5, Count:=4
''wdLine=5
End With
With oWord.Selection
    .TypeText vbCrLf
    .TypeText vbCrLf
    
    .TypeText "Заявление"
    .Style = " Заголовок 1"
    .ParagraphFormat.Alignment = wdAlignParagraphCenter
    
    .TypeText vbCrLf
    .Style = "обычный"
    .TypeText vbCrLf
    .TypeText "" & Space(150) & Date
    .TypeText vbCrLf
    .TypeText vbCrLf
    .TypeText vbCrLf
    .TypeText "Я " & sFio & _
    " Обнаружил(а) " & sPovod & ":"
    .Font.Size = 12
    .TypeText vbCrLf
    .TypeText vbCrLf
    .TypeText vbCrLf
    .Select
End With
tab58 4, "50,20,90"
 
With otbl
    .Cell(1, 1).Range.Text = "Директор"
    .Cell(1, 2).Range.Text = "__________"
    .Cell(1, 3).Range.Text = "Иванов И.И."
    .Cell(3, 1).Range.Text = "Отв.исполнитель "
    .Cell(3, 2).Range.Text = "__________"
    .Cell(3, 3).Range.Text = sOtvIsp
    .Cell(4, 1).Range.Text = "мп"
End With
 
 
 
End Sub
Sub tab58(strok, stolb)
Dim xm, x1, x1k
xm = Split(stolb, ",")
x1 = LBound(xm, 1)
x1k = UBound(xm, 1)
 
Set otbl = oDoc.Tables.Add(oWord.Selection.Range, strok, x1k + 1, 1, 0)
With otbl
    .TopPadding = 0
    .BottomPadding = 0
    .LeftPadding = 0
    .RightPadding = 0
    .Spacing = 0
    .AllowPageBreaks = True
    .AllowAutoFit = False
End With
 
With otbl
    .AutoFitBehavior (wdAutoFitFixed)
    If .Style <> "Сетка таблицы" Then
    .Style = "Сетка таблицы"
    End If
    .ApplyStyleHeadingRows = True
    .ApplyStyleLastRow = False
    .ApplyStyleFirstColumn = False ''True
    .ApplyStyleLastColumn = False
    .ApplyStyleRowBands = False ''True
    .ApplyStyleColumnBands = False
End With
 
Do While x1 <= x1k
    otbl.Columns(x1 + 1).Select
    With oWord.Selection.Columns
        .PreferredWidthType = 3
        .PreferredWidth = xm(x1) * 72 / 25
    End With
    x1 = x1 + 1
Loop
With otbl
''   .Borders(wdBorderTop).LineStyle = 0
''   .Borders(wdBorderLeft).LineStyle = 0
''   ''wdLineStyleNone
''   .Borders(wdBorderBottom).LineStyle = 0
''   .Borders(wdBorderRight).LineStyle = 0
''   .Borders(wdBorderHorizontal).LineStyle = 0
''   .Borders(wdBorderVertical).LineStyle = 0
''   .Borders(wdBorderDiagonalDown).LineStyle = 0
''   .Borders(wdBorderDiagonalUp).LineStyle = 0
For j1 = 1 To 8
.Borders(-j1).LineStyle = 0
Next j1
End With
End Sub
Миниатюры
Как сделать документ на основание заявления VBA  
0
0 / 0 / 0
Регистрация: 12.04.2016
Сообщений: 26
21.04.2016, 14:33  [ТС] 3
Теперь у меня в этом коде ошибка в этой страке Call ЭтаКнига.DocWrite(sPovod, sFio, sOtvIsp)
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
'Кнопка Отмена
Private Sub btnEscape_Click()
Unload Me 'закрытие формы
End Sub
'Кнопка Напечатать приказ
Private Sub CommandButton1_Click()
'Объявляем глобальных перемен
    Dim sPovod As String
    Dim sFio As String
    Dim sOtvIsp As String
    'Подставить данные из формы
    If optOcvoenie.Value = True Then sPovod = " не известную мне причину неполадок с компьютером "
    If optDrugoe.Value = True Then sPovod = txtDrugoe.Value
    sFio = cbFIO.Value
 
    
    
    
    sOtvIsp = "Куртлацков Д.А."
    'Конец подстановки данных
    Call ЭтаКнига.DocWrite(sPovod, sFio, sOtvIsp)
End Sub
Private Sub optDrugoe_Change()
    If optDrugoe.Value = True Then 'Если выбор другое, то
    txtDrugoe.Visible = True 'Появляется строчка ввода
    Else 'иначе
    txtDrugoe.Visible = False 'txtDrugoe нет на форме
    End If 'конец если
End Sub
'Инициализация
Private Sub UserForm_Initialize()
    optOcvoenie.Value = True
    txtDrugoe.Visible = False
    'Объявляем переменные
    Dim oColumn As Range
    Dim oCell As Range
    Set oColumn = Columns("A")
    For Each oCell In oColumn.Cells
        If oCell.Value <> "" Then
            cbFIO.AddItem oCell.Value
        End If
    Next
    cbFIO.ListIndex = 0
End Sub
Добавлено через 18 минут
подставляю ваши данные и мой код ругаеться(
0
21.04.2016, 14:33
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.04.2016, 14:33
Помогаю со студенческими работами здесь

подчиненность документов (Документ основание не типовый)
Доброго времени суток Форумчане! Создал свой документ &quot;МойДокумент&quot;. На кнопку этого документа...

Как открыть документ Word из VBA-Excel
Господа, есть несколько скромных вопросов, надеюсь на ваше участие: 1) Как открыть док-т Word из...

Как открыть запороленый документ, с помощью vba?
А потом опять поставить старый пароль.

В равнобедренном треугольнике боковая сторона A, основание B. Найти высоту, опущенную на основание
Помогите пожалуйста с реализацией задачи. В равнобедренном треугольнике боковая сторона A, а...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru