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

اگر شما یک برنامه نویس پایگاه داده هستید، ممکن است گاهی اوقات فایل های اکسل را دریافت کنید که باید آنها را پاک کنید تا در اکسس قرار دهید. دو مشکل رایج توسط شماره های تامین اجتماعی و کد پستی ایجاد می شود. اینها بهتر است به عنوان متن در پایگاه داده ذخیره شوند، و نه به اعدادی که اغلب در اکسل هستند. (در اکسل اعداد ممکن است به دلیل قالب بندی سلول ها به درستی نمایش داده شوند و نه به این دلیل که به عنوان متن ذخیره می شوند.)

حتی زمانی که محدوده به صورت متن در اکسل، کامل با صفرهای ابتدایی، فرمت می شود، Access اغلب این مقادیر را به اعداد تبدیل می کند. با این حال، اگر قبل از عدد با آپاستروف باشد، مانند یک برچسب، Access آن را به درستی به عنوان متن بدون آپستروف اصلی وارد می کند.

برای آماده کردن شماره های تامین اجتماعی برای وارد کردن در اکسس، یک ماکرو کوچک و سریع می تواند مفید باشد—یکی که از وجود صفرهای ابتدایی اطمینان می دهد و آپوستروف برای سلول در جای خود قرار دارد. برای استفاده از ماکرو، کافی است محدوده شماره های تامین اجتماعی را انتخاب کنید و سپس ماکرو را اجرا کنید:

Sub SSN2Text()
    Dim c As Range
    Application.ScreenUpdating = False
    Format selected cells as text
    Selection.NumberFormat = "@"
    For Each c In Selection
        If Left(c, 1) = "" Then
            strip the apostrophe, if any
            c = Mid(c, 2, 99)
        Else
            c = "" & Right("000000000" & c, 9)
        End If
    Next c
    Application.ScreenUpdating = True
End Sub

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

Sub ZIP2Text()
    Dim c As Range
    Application.ScreenUpdating = False
    Format selected cells as text
    Selection.NumberFormat = "@"
    For Each c In Selection
        If Left(c, 1) = "" Then
            strip the apostrophe, if any
            c = Mid(c, 2, 99)
        End If
        If Len(c) 
اگر خواستی، با این لینک از ما حمایت کن

پاسخ شما

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

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

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

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

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

23.2k سوال

8.5k پاسخ

608 دیدگاه

9.7k کاربر

149 نفر آنلاین
0 عضو و 149 مهمان در سایت حاضرند
بازدید امروز: 22050
بازدید دیروز: 22514
بازدید کل: 15169251
...