سؤال

أود أن أكون قادرًا على إنشاء عنصر صفحة يمكنني إطعام النص وسيشكل نفسه في التصميم المفضل. على سبيل المثال:

{MACRO DocumentIntro("Introduction to Business Studies", "FP015", "Teachers' Guide")}

مع ذلك كحقل ، يجب أن يكون الإخراج خطًا ، والأول سلسلتين بحجم معين وخط ، محور ، خط آخر ، ثم السلسلة الثالثة المزيفة ، بحجم وتركز.

أعلم أن هذا نوع من Tex يشبه Tex وربما خارج نطاق VBA ، ولكن إذا كان لدى أي شخص أي فكرة عن كيفية ذلك ، فيرجى إخبارها!

تعديل:

حسنًا ، إذا وضعت المعلومات المطلوبة في الكلمة الرئيسية ، كجزء من خصائص المستند ، مع نوع من الفاصل الفريد ، فإن ذلك يحصل على هذه المعلومات ، وستكون المعلومات فريدة لكل مستند. التالي يضع إشارة مرجعية حيث سيتم عرض الأشياء. ثم يخلق المرء AutoOpen الماكرو الذي يذهب إلى هذا الإشارة المرجعية ، يسحب الصلة من الكلمات الرئيسية ، ويشكل النص بشكل مناسب في المرجعية .Selection.

هل هذا ممكن؟

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

المحلول

أنت بالتأكيد على المسار الصحيح هنا لحل الترميز. ومع ذلك ، هناك طريقة أبسط بدون رمز - هذا هو نوع السيناريو الذي تم تصميم عناصر التحكم في المحتوى في Word 2007 لـ Fields/Properties ، ويمكنك ربطها بعناصر التحكم في المحتوى (CC). يمكن أن تحتفظ هذه CC بأنماط (مثل مركزها ، جريئة ، إلخ). لا مطلوب VBA.

أسهل ما يجب القيام به هو اختيار 3 خصائص مستندات مدمجة تريدها دائمًا. على سبيل المثال ، يمكن أن تكون "العنوان" أول سلسلة لك ، "موضوع" السلسلة الثانية و "الكلمات الرئيسية" الثالثة. ثم ، فقط اذهب إلى إدراج شريط، أجزاء سريعة, خصائص المستند وإدراج ووضع وتنسيق هؤلاء كيف تحب. ثم انتقل إلى زر بدء Word (thing orb) ثم تحت إعداد أختر ملكيات. هنا يمكنك الكتابة ، على سبيل المثال "مقدمة في الدراسات التجارية"، داخل ال عنوان مربع ثم فقط إلغاء تحديده بطريقة أو بأخرى (مثل النقر في مربع آخر). التحكم في المحتوى ل عنوان سيتم ملؤها تلقائيًا بنصك.

إذا كنت ترغب في استخدام هذا لملفات متعددة ، فما عليك سوى إنشاء هذا الملف كـ .dotx (بعد إدراج/تنسيق CC وقبل تحديث نص خصائص المستند). ثم في كل مرة يتعين على كل ما عليك فعله هو تعيين هذه الخصائص الثلاثة مع كل ملف جديد.

نصائح أخرى

حسنًا ، نعم ، لقد تحول إلى أنه ممكن.

Sub autoopen()
    Dim sKeywords As String
    sKeywords = ActiveDocument.BuiltInDocumentProperties(4)
    ActiveDocument.Bookmarks("foo").Select
    Selection.Text = sKeywords
End Sub

حسنًا ، لدي بعض التعبئة ، ولكن على الأقل هناك شجاعة.

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