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

همیش با یک کار دلهره آور روبروست: او باید فونت های پیش فرض استفاده شده در تعداد زیادی کتاب کار اکسل را تغییر دهد. او بیش از 100 کتاب کار دارد، و فونت‌های استفاده شده در آن کتاب‌های کار باید به فونت جدیدی که طبق دستور شرکت مشخص شده است، تغییر یابد. (شما می دانید که وظایف شرکتی چگونه می تواند باشد!)

راه دستی برای نزدیک شدن به این کار این است که هر کتاب کار را بارگیری کنید، هر کاربرگ را مرور کنید، سلول‌ها را انتخاب کنید و فونت‌های آن سلول‌ها را تغییر دهید. برای پیچیده‌تر کردن کار Hamishs، او باید چندین فونت را در هر کتاب کار تغییر دهد. به عبارت دیگر، با توجه به فونت های A، B، C و D، Hamish باید فونت A را به C و فونت B را به D تغییر دهد.

بهترین راه برای حل این مشکل استفاده از یک ماکرو است. آنقدر بارگذاری، جستجو و تغییر وجود دارد که ضروری است که صرفاً واگذار کردن کار به یک کلان منطقی است. ماکرو زیر باید این کار را انجام دهد:

Sub ChangeFontNames()
    Dim vNamesFind
    Dim vNamesReplace
    Dim sFileName As String
    Dim Wkb As Workbook
    Dim Wks As Worksheet
    Dim rCell As Range
    Dim x As Integer
    Dim iFonts As Integer
    Dim sPath As String

    Change these lines as appropriate
    These are the fontnames to find
    vNamesFind = Array("Arial", "Allegro BT")
    These are the fontnames to replace
    vNamesReplace = Array("Wingdings", "Times New Roman")
    This is the folder to look for xls files
    sPath = "C:foldername"

    Application.ScreenUpdating = False
    iFonts = UBound(vNamesFind)
    If iFonts <> UBound(vNamesReplace) Then
        MsgBox "Find and Replace Arrays must be the same size"
        Exit Sub
    End If
    sFileName = Dir(sPath & "*.xls")
    Do While sFileName <> ""
        Set Wkb = Workbooks.Open(sPath & sFileName)
        For Each Wks In Wkb.Worksheets
            For Each rCell In Wks.UsedRange
                For x = 0 To iFonts
                    With rCell.Font
                        If .Name = vNamesFind(x) Then _
                            .Name = vNamesReplace(x)
                    End With
                Next
            Next
        Next
        Wkb.Close(True)
        sFileName = Dir
    Loop
    Application.ScreenUpdating = True
    Set rCell = Nothing
    Set Wks = Nothing
    Set Wkb = Nothing
End Sub

برای استفاده از ماکرو با کتاب های کاری خود، چند کار وجود دارد که باید انجام دهید. ابتدا مطمئن شوید که همه کتاب‌هایی که می‌خواهید تغییر دهید در یک پوشه ذخیره می‌شوند و نام پوشه را می‌دانید. سپس در داخل ماکرو، متغیرهای تعریف شده در نزدیکی ابتدای ماکرو را تغییر دهید. عناصر آرایه‌های vNamesFind و vNamesReplace را تغییر دهید تا با نام فونت‌هایی که می‌خواهید پیدا کنید و جایگزین کنید، مطابقت داشته باشد. سپس باید متغیر sPath را تغییر دهید تا مسیر کامل پوشه حاوی کتاب های کاری شما را در بر داشته باشد. (یک اسلش متعاقب در مسیر را فراموش نکنید.)

هنگامی که ماکرو را اجرا می کنید، هر کتاب کار را به نوبه خود در پوشه بارگیری می کند. سپس، هر کاربرگ را در هر کتاب کار مرور می‌کند و هر سلول را بررسی می‌کند. اگر سلول یکی از فونت‌هایی را داشته باشد که باید پیدا شود، با فونت جایگزین مربوطه جایگزین می‌شود. هنگامی که ماکرو با کتاب کار تمام شد، ذخیره می شود و کتاب کار بعدی پردازش می شود.

کسانی که علاقه مند به اجتناب از این نوع مشکلات در کاربرگ های جدید هستند، باید نحوه استفاده از استایل ها در اکسل را بررسی کنند. شما می توانید هر تعداد سبک را تعریف کنید و از آنها در یک کتاب کار استفاده کنید. اگر بعداً نیاز به تغییر قالب بندی برای سلول های خاص داشتید، تنها کاری که باید انجام دهید این است که سبک های اساسی را تغییر دهید. (سبک ها در شماره های دیگر ExcelTips پوشش داده شده اند . )

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

پاسخ شما

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

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

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

سوالات مشابه

برای دسترسی راحت به مطالب سایت ، اپلیکیشن سایت را نصب کنید
و لطفا بعد از نصب امتیاز دهید. با تشکر از حمایت شما
0 دوستدار 0 امتیاز منفی
0 پاسخ 28 visibility
0 دوستدار 0 امتیاز منفی
0 پاسخ 32 visibility
0 دوستدار 0 امتیاز منفی
0 پاسخ 35 visibility
0 دوستدار 0 امتیاز منفی
1 پاسخ 60 visibility
0 دوستدار 0 امتیاز منفی
0 پاسخ 34 visibility

24.3k سوال

9.6k پاسخ

614 دیدگاه

11.2k کاربر

170 نفر آنلاین
0 عضو و 170 مهمان در سایت حاضرند
بازدید امروز: 22748
بازدید دیروز: 17853
بازدید کل: 20334927
...