Word 2007 VBA - انتقل إلى العنصر النائب عبر الماكرو

StackOverflow https://stackoverflow.com/questions/4267147

  •  28-09-2019
  •  | 
  •  

سؤال

حسنًا ، لذا فأنا أقاتل باستمرار مع Microsoft حيث أقوم بإنشاء العديد من القوالب لعدد قليل من العملاء. مشكلتي هي أن العناصر النائبة في مربع النص البسيطة المنتشرة في جميع أنحاء المستند تتيح لي الضغط على علامة التبويب للذهاب إلى العنصر النائب التالي. يشبه إلى حد كبير ترتيب علامة التبويب في Visual Studio. ولكن لسبب غريب ، لا يعمل هذا مع أصحاب نماذج Text Box Rich. وأحتاج إلى استخدام نص غني لبضع مربعات نصية لأنه يجب السماح للمستخدم بتغيير تنسيق الأحرف المفردة. هذا غير ممكن مع مربعات النص البسيطة.

لذلك كنت أفكر ، هل يمكن أن يكون هذا ممكنًا باستخدام وحدات الماكرو؟ على سبيل المثال ، إذا تم تحديد عنصر نزيه في مربع النص وتم تشغيل الماكرو ، فانتقل إلى العنصر النائب التالي؟

هل كانت مفيدة؟

المحلول

يمكن الوصول إلى كائنات الشكل/النصوص من خلال

ThisDocument.Shapes.Item(index)

والتحقق من كائن الشكل الذي تم إرجاعه

theShape.Type = msoTextBox

ومع ذلك ، سيتم إرجاع كائنات الشكل بالترتيب الذي تم إنشاؤه ، وليس طلبهم على الصفحة/المستند. للعثور على مربع النص "التالي" ، من المحتمل أن تضطر إلى حلقة جميع مربعات النص والتحقيق في موقعها (.top ، .left etc) من أجل العثور على الصحيح للانتقال إلى:

theNextShape.Select
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top