ایجاد سوال
dark_mode
0 دوستدار 0 امتیاز منفی
36 visibility
موضوع: آفیس توسط:

ژان دوست دارد از تنظیم "Center Across Selection" در برگه Alignment کادر محاوره ای Format Cells استفاده کند تا اطلاعات را در سلول های ادغام نشده متمرکز کند. با این حال، او متعجب است که آیا راهی وجود دارد که بتواند از محتویات یک سلول برای کنترل تعداد سلول‌های مرکزی استفاده کند. به عنوان مثال، اگر او عدد 4 را در سلول A1 داشته باشد، مرکز در 4 سلول (B1:E1) خواهد بود، اما اگر آن را به 5 تغییر دهد، مرکزیت بین 5 سلول خواهد بود (B1:F1).

تنها راهی که می توان این کار را انجام داد استفاده از ماکرو است. از آنجا که ممکن است مقدار سلول A1 را تغییر دهید، ماکرو باید هر زمان که تغییری در کتاب کار ایجاد می‌کنید اجرا شود و سپس تعیین کند که آیا این تغییر در سلول A1 انجام شده است یا خیر. اگر چنین است، می‌تواند تنظیمات را در سلول‌های ردیف انجام دهد.

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim sWidth As String
    Dim sStartCell As String
    Dim iWidth As Integer
    Dim r As Range
    Dim sTemp As String

    sWidth = "$A$1"
    sStartCell = "$B$1"

    If Target.Address = sWidth Then
        iWidth = Range(sWidth).Value
        If iWidth > 1 Then
            sTemp = Right(sStartCell, 1)
            sTemp = sTemp & ":" & sTemp
            Range(sTemp).HorizontalAlignment = xlGeneral

            Set r = Range(sStartCell)
            Set r = r.Resize(1, iWidth)
            r.HorizontalAlignment = xlCenterAcrossSelection
        End If
    End If
End Sub

توجه داشته باشید که این ماکرو در برگه کد کاربرگ مورد نظر قرار می گیرد. هر زمان که تغییری در کاربرگ ایجاد شود، ماکرو به طور خودکار اجرا می شود. برای اینکه آن را برای شما کار کند، باید آدرس های اختصاص داده شده به متغیرهای sWidth و sStartCell را تغییر دهید. sWidth روی سلولی تنظیم می شود که حاوی تعداد ستون هایی است که می خواهید در مرکز قرار دهید. sStartCell روی اولین سلول در سمت چپ محدوده ای که قرار است مرکز گذاری انجام شود، تنظیم می شود.

ماکرو هر چیزی را که در سلول sWidth شما وجود دارد را می گیرد و آن را در متغیر iWidth قرار می دهد. اگر این مقدار بزرگتر از 1 باشد، آنگاه تغییرات مرکز انجام می شود. (مرکز کردن روی انتخابی که عرض آن کمتر از 2 ستون است، منطقی نیست.) تراز همه سلول‌ها به این صورت است که ردیف به حالت کلی برمی‌گردد، و سپس محدوده‌ای تعریف می‌شود که به همان عرضی که شما مشخص کرده‌اید، شروع می‌شود. در سلول در sStartCell. برای این محدوده، تراز بر روی xlCenterAcrossSelection تنظیم شده است تا نتایج مورد نظر را ارائه دهد.

اگر خواستی، با این لینک از ما حمایت کن

پاسخ شما

looks_5نام شما برای نمایش - اختیاری
حریم شخصی : آدرس ایمیل شما محفوظ میماند و برای استفاده های تجاری و تبلیغاتی به کار نمی رود
عدد چهار رقمی در تصویر را وارد کنید

برای جلوگیری از این تایید در آینده, لطفا وارد شده یا ثبت نام کنید.
اگر حساب گوگل دارید به راحتی وارید شوید

0 پاسخ وجود دارد

سوالات مشابه

برای دسترسی راحت به مطالب سایت ، اپلیکیشن سایت را نصب کنید
و لطفا بعد از نصب امتیاز دهید. با تشکر از حمایت شما
0 دوستدار 0 امتیاز منفی
0 پاسخ 30 visibility
0 دوستدار 0 امتیاز منفی
0 پاسخ 56 visibility
0 دوستدار 0 امتیاز منفی
0 پاسخ 35 visibility
0 دوستدار 0 امتیاز منفی
0 پاسخ 25 visibility
0 دوستدار 0 امتیاز منفی
0 پاسخ 117 visibility

24.3k سوال

9.6k پاسخ

614 دیدگاه

11.2k کاربر

207 نفر آنلاین
0 عضو و 207 مهمان در سایت حاضرند
بازدید امروز: 22588
بازدید دیروز: 17853
بازدید کل: 20334767
...