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

Jeaux با تعداد زیادی کاربرگ طولانی کار می کند که حاوی داده هایی است که ممکن است برای چاپ نیاز داشته باشد. پس از چاپ، او سپس در فضای کنار ستون داده ها می نویسد. همه ردیف ها به طور خودکار اندازه گیری می شوند تا با محتوا مطابقت داشته باشند، بنابراین ارتفاع آنها متفاوت است. Jeaux به دنبال ماکرویی است که ردیف های انتخاب شده را بگیرد و به طور تدریجی آنها را افزایش دهد، مثلاً با درصد معینی. (از آنجایی که ارتفاع آنها متفاوت است، او نمی تواند همه آنها را روی یک ارتفاع قرار دهد.) به این ترتیب، او می تواند ردیف ها را به اندازه کافی برای دست خط بزرگ کند، اما همچنان می تواند همه داده ها را ببیند. همچنین خوب است که راهی برای تنظیم ارتفاع سطرها به همان چیزی که قبل از چاپ بود داشته باشیم.

انجام این کار با ماکرو بسیار آسان است. تنها کاری که باید انجام دهید این است که از ردیف های انتخاب شده عبور کرده و ویژگی RowHeight را تنظیم کنید، همانطور که در این ماکرو انجام می شود:

Sub ExpandSelectedRows()
    Dim rRow As Range
    Dim dEnlarge As Double

    dEnlarge = 1.25
    For Each rRow In Selection.Rows
        rRow.RowHeight = rRow.RowHeight * dEnlarge
    Next
End Sub

در این حالت، متغیر dEnlarge حاوی 1.25 است، به این معنی که فرمول موجود در حلقه For ... Next ارتفاع سطر را 25 درصد افزایش می دهد. مقدار این متغیر را می توان تغییر داد تا درصدی را که می خواهید استفاده کنید منعکس کند، یا می توانید ماکرو را تغییر دهید تا از کاربر یک درصد بخواهید:

Sub ExpandSelectedRows()
    Dim rRow As Range
    Dim dEnlarge As Double
    Dim sTemp As String

    sTemp = InputBox("Increase by what percent?")
    dEnlarge = Val(sTemp)
    If dEnlarge > 1 Then dEnlarge = dEnlarge / 100
    If dEnlarge < 1 Then dEnlarge = dEnlarge + 1

    If dEnlarge > 0 Then
        For Each rRow In Selection.Rows
            rRow.RowHeight = rRow.RowHeight * dEnlarge
        Next
    End If
End Sub

اگر بعداً می خواهید ردیف ها را به ارتفاع اصلی خود برگردانید، ماکرو تک خطی زیر این کار را انجام می دهد:

Sub AutfitRows()
  Cells.EntireRow.AutoFit
End Sub

این ماکرو به این دلیل کار می کند که ردیف های کاربرگ شما در اصل «اندازه خودکار متناسب با محتوا» داشتند. در حالی که یک ماکرو می توانست برای معکوس کردن مراحل بزرگ نمایی (تقسیم بر dEnlarge به جای ضرب) نوشته شود، تنها در صورتی قابل اعتماد کار می کند که ماکرو ExpandSelectedRows چندین بار اجرا نشود.

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

پاسخ شما

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

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

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

سوال مشابهی یافت نشد

برای دسترسی راحت به مطالب سایت ، اپلیکیشن سایت را نصب کنید
و لطفا بعد از نصب امتیاز دهید. با تشکر از حمایت شما

23.2k سوال

8.5k پاسخ

613 دیدگاه

10.8k کاربر

179 نفر آنلاین
0 عضو و 179 مهمان در سایت حاضرند
بازدید امروز: 4192
بازدید دیروز: 13001
بازدید کل: 19458488
...