اذهب الي المحتوي
أوفيسنا

الردود الموصى بها

قام بنشر

كيف يمكن فى اكسيل2010 مجاذاة الTEXT BOX مع حدود الصفوف والأعمدة

ضغطت كليك يمين على الTEXT BOX واخترت FORMAT SHAPE 

ثم فى النافذة الناتجة لم أجد الا SIZE التى تعين طول الTEXT BOX وعرضه

                                       و TEXT BOX التى تعين مواصفات الكلام المكتوب  وموقعه عن حدود الTEXT BOX

ولكنى أريد موقع الTEXT BOX نفسه عن بداية الصفحة أو عن أى شئ بحيث أستطيع بعد ذلك محاذاة حدوده مع حدود الصفوف والأعمدة

لأنى حين أحاول عمل هذه المحاذاة يدويآ لا أستطيع ضبطها(أجد دائمآ بين حد الTEXT BOX وحد الصف أو العمود حوالى 1/2  أو 1/3 مليمتر)

قام بنشر (معدل)

السلام عليكم

يدويا او عن طريق كود 

Sub AlignTextBox()
    Dim ws As Worksheet
    Dim txtBox As Shape
    Dim rng As Range
    
    Set ws = ActiveSheet
    
    Set txtBox = ws.Shapes("TextBox1")
   
    Set rng = ws.Range("B2:D4")
    
    With txtBox
        .Left = rng.Left
        .Top = rng.Top
        .Width = rng.Width
        .Height = rng.Height
    End With
End Sub

    Set txtBox = ws.Shapes("TextBox1") يمكن تعديل اسم التكست
   
    Set rng = ws.Range("B2:D4 تعديلها حسب المكان 

محاداة testbox.xlsb

تم تعديل بواسطه عبدالله بشير عبدالله
  • Like 2
قام بنشر

او يمكن نقر في خلية مراد تسوية تكست بوكس مع حد الاعلى و يسار ثم وضع الكود التالي خلف الزر او اي طريقة ينابسبك

Dim v As Integer
Dim h As Integer
v = ActiveCell.Top
h = ActiveCell.Left
TextBox1.Top = v
TextBox1.Left = h

 

قام بنشر (معدل)

شكرآ لكما

ولكن المشكلة أن الTEXT BOX لا أعرف له اسمآ (هل اسمه TEXTBOX1 أم TEXTBOX2 أم ماذا ؟)

فى الأدوات التى استخدمتها (مثل الCommandButton مثلآ) كنت أجد لكل أداة خصائص ومن خصائصها الاسم(بل يمكننى تعديل الاسم حسبما أريد)

ولكن الTEXT BOX لم أجد له أى اسم . فكيف أعرف اسمه الذى أضعه فى كودى ؟

18 ساعات مضت, عبدالله بشير عبدالله said:
 Set txtBox = ws.Shapes("TextBox1")
6 ساعات مضت, ابو عارف said:
TextBox1.Top = v
TextBox1.Left = h

ولكم ألف شكر

تم تعديل بواسطه اسلام الكبابى أوفيسنا
قام بنشر (معدل)

وجدت اسمه والحمد لله

وجدته مع أسماء الخلايا لا كباقى الأدوات

وحين حاولت تطبيق حلولكم لم أستطع تطبيق الحل الثانى(أبو عارف) لأنى لم أعرف أين أكتب هذا الكود

أما الحل الأول(عبد الله بشير) فطبقته ولكن لم يعمل الكود على محاذاة الTEXT BOX مع حدود الصفوف والأعمدة

لم يقم بهذه المحاذاة الا مع تجربة منى بوضع زر واستبدال بداية الكود (Sub AlignTextBox)

بحدث الضغط على الزر(Private Sub CommandButton1_Click)

ولكن هذا طبعآ ليس حلآ

فكيف يمكن ضبط هذه المحاذاة بمجرد فتح الشيت وحتى غلقه (أى بحيث يكون الTEXT BOX فى هذا المكان منذ بدء التشغيل وكأنه ComboBox أو أى أداة أخرى)

ولكم ألف شكر

تم تعديل بواسطه اسلام الكبابى أوفيسنا
  • تمت الإجابة
قام بنشر

حدثت فى البداية نفس المشكلة

لم يعمل الكود على محاذاة الTEXT BOX مع حدود الصفوف والأعمدة

لم يقم بهذه المحاذاة الا مع تجربة منى بوضع زر واستبدال بداية الكود (Sub TextBox)

بحدث الضغط على الزر(Private Sub CommandButton1_Click)

ولكن حين فتحت الملف المرفق وجدته يعمل فعلآ على محاذاة الTEXT BOX مع حدود الصفوف والأعمدة

فلما بحثت فيه وجدت أن سبب عدم عمله عندى كان فقط أنك لم تكتب لى الكود الموجود بالملف كاملآ فى صفحة المنتدى

كان بالملف هذا الجزء

Private Sub Worksheet_Activate()
TextBox
End Sub

ولكم ألف شكر

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information