| 
							StrikeR33
							 
								Гость 
							 
						 | 
						
							
								  | 
								
									
									«   : 02-06-2008 12:32 »    | 
								
								 | 
							  
							 
							VBA Word в общем проблема такая… Программный код не считывается, если документ поставлен на «Защиту формы», т.е. при таком условии макросы не работают. Условием задачи является  обязательная «защищенность формы».  
  Решение было найдено: в начале выполнения макроса необходимо отключить «защиту формы» программно, VBА это позволяет; затем поставить на выполнение программную процедуру – макрос, а затем по окончании выполнений всех процедур с документом снова поставить защиту.
  Но здесь есть один минус, если отключать "защиту формы" программно, все программные процедуры обработки документа протекают медленнее в 2 раза , по сравнению с тем случаем, когда это делается вручную.  Но вручную отключать документ не годиться – слишком примитивно получается.
  Этот момент был исправлен более в поздних версиях офиса, или точнее сказать программном ядре VBA. Но нужно сделать программу с учётом  старых версий, найти способ как это обойти (обойти медленное исполнение)…
  Рекомендации по оптимизации кода не предлагать
  
						 |