Показать полную графическую версию : Требуется помощь доделать код на VBA
Mikle_home88
02-04-2015, 22:25
Вообщем, в переменную хочу запихнуть параметр страницы (например по левому краю, чтобы был отступ 3). По коду он должен сравнивать с активным документом. Если поле не совпадает, то одно сообщение, если совпадает, то соответственно другой.
Вот код:
Private Sub CommandButton1_Click()
Dim f As PageSetup
f.LeftMargin = 3
If ActiveDocument.PageSetup.LeftMargin = f Then
MsgBox "Верные поля"
Else
MsgBox "Неверные поля"
End If
End Sub
Может все так просто, но не могу найти правильное решение. Если, кто знает, большая просьба HELP!! Заранее спасибо!
(например по левому краю, чтобы был отступ 3) »
«3» — чего? Отступ в VBA в пунктах задаётся. Не маловато 3 пункта будет?
If ActiveDocument.PageSetup.LeftMargin = f Then »
Вы пытаетесь сравнивать значение типа «single» с объектной переменной типа «PageSetup». К тому же — неинициализированной.
Я вообще не пойму смысла в:
в переменную хочу »
когда достаточно простого:
Private Sub CommandButton1_Click()
If ActiveDocument.PageSetup.LeftMargin = 3 Then
MsgBox "Верные поля"
Else
MsgBox "Неверные поля"
End If
End Sub
Mikle_home88
03-04-2015, 08:55
Да, тут явная ошибка, сравнивая свойство объекта с самим объектом. Переделал вот, так If ActiveDocument.PageSetup.LeftMargin = f.LeftMargin. Но всё равно не получается. Не могу добиться с переменной f, неправильно присваиваю параметр f.LeftMargin = 3.
Iska, спасибо за ответ. Но так я, конечно, тоже пробовал. Но это всё не работает. Бех разницы, какие бы поле по левому краю я не поставил, он всегда будет выдавать "Неверные поля".
Смысл от всего этого, когда загружаю страницу через форму, и если на ней будут не те поля и табуляция, то соответственно будет выдаваться сообщение.
Mikle_home88
03-04-2015, 12:23
Посмотрел в примере, что нужно вот так еще установить Set f = Selection.Range.PageSetup. Но как установить, чтобы в переменной хранилось содержимое по левому краю
Вы никак не поясняете Вашего упорного желания «присобачить» объектную переменную типа PageSetup туда, где она ни разу не нужна.
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.