Import کردن فایل های DBF به اکسل

Collapse
X
 
  • زمان
  • نمایش
Clear All
new posts
  • ~M*E*H*D*I~

    • 2011/10/19
    • 4374

    Import کردن فایل های DBF به اکسل

    درود

    کد زیر رو برای ایمپورت کردن فایل های dbf به اکسل نوشتم ایرادی که داره خروجی که میده کاراکترهای فارسی بهم ریختن ، دوستان ایده و راهنمایی دارند بفرمایند


    کد PHP:

    Sub importdbf
    ()
    FileToOpen Application.GetOpenFilename _
    (Title:="Please choose a file to import"_
    FileFilter
    :="Excel Files *.dbf (*.dbf),")

    If 
    FileToOpen False Then

    Exit Sub
    Else
       
    Dim conn As Object
       Set conn 
    CreateObject("ADODB.Connection")
       
    Dim rst As Object
       Set rst 
    CreateObject("ADODB.Recordset")
       
    iPos InStrRev(FileToOpen"\", , vbTextCompare)
       Filepath = Left(FileToOpen, iPos)
       Filename = Right(FileToOpen, Len(FileToOpen) - iPos)
       
      conn.Open "
    Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Filepath & ";Extended Properties=dBASE IV"

       rst.Open "
    Select From " & Filename, conn, adOpenStatic, adLockReadOnly, adCmdText

     ActiveSheet.Range("
    A2").CopyFromRecordset rst
        rst.Close
        Set rst = Nothing
        conn.Close
        Set conn = Nothing
    End If
    End Sub 
    Last edited by ~M*E*H*D*I~; 2014/04/20, 18:21.

    sigpic
  • Amir Ghasemiyan

    • 2013/09/20
    • 4476

    #2
    من كدت رو متوجه نشدم دقيقا چكار ميكنه ولي معمولا براي اينكه كاركترهاي فارسي مشكلي نداشته باشن از كدهاي اسكي استفاده ميكنن. امكانش هست همچين كاري انجام بدي؟

    کامنت

    • ~M*E*H*D*I~

      • 2011/10/19
      • 4374

      #3
      نوشته اصلی توسط amir ghasemiyan
      من كدت رو متوجه نشدم دقيقا چكار ميكنه ولي معمولا براي اينكه كاركترهاي فارسي مشكلي نداشته باشن از كدهاي اسكي استفاده ميكنن. امكانش هست همچين كاري انجام بدي؟
      این کد خروجی های فاکس پرو رو وارد اکسل میکنه ، به درد تهیه لیست های بیمه میخوره ، باید از UTF-8 استفاده بشه ولی حوصله نداشتم ببینم چیکار باید کرد گفتم یه بارم من سوال بپرسم

      sigpic

      کامنت

      • khakzad

        • 2010/03/17
        • 2034

        #4
        سلاااااام
        جوابی که نداشتم. سوال اضافه می کنم :D
        کد برعکسش هم امکانش هس؟
        شیت اکسل رو به dbf تبددیل کنه؟
        طوری که بیمه قبول کنه؟

        سپاس

        کامنت

        • ~M*E*H*D*I~

          • 2011/10/19
          • 4374

          #5
          نوشته اصلی توسط khakzad
          سلاااااام
          جوابی که نداشتم. سوال اضافه می کنم
          کد برعکسش هم امکانش هس؟
          شیت اکسل رو به dbf تبددیل کنه؟
          طوری که بیمه قبول کنه؟

          سپاس
          بله امکان پذیر هست به شرط حل مشکل utf-8

          sigpic

          کامنت

          • khakzad

            • 2010/03/17
            • 2034

            #6
            سلام
            من این کد رو اجرا کردم
            این ارور رو میده
            Click image for larger version

Name:	Untitled.jpg
Views:	1
Size:	109.8 کیلو بایت
ID:	122750
            میشه بفرمایید مشکل کجاست؟ (به این کدها اشنایی ندارم)

            کامنت

            • mokaram
              مدير تالار اکسل و بانک اطلاعاتی

              • 2011/02/06
              • 1805

              #7
              من اجرا کردم مشکلی پیش نیومد
              فایل های پیوست شده

              کامنت

              • ~M*E*H*D*I~

                • 2011/10/19
                • 4374

                #8
                نوشته اصلی توسط khakzad
                سلام
                من این کد رو اجرا کردم
                این ارور رو میده
                [ATTACH=CONFIG]3142[/ATTACH]
                میشه بفرمایید مشکل کجاست؟ (به این کدها اشنایی ندارم)
                باید کتابخانه active x رو فعال کنید

                sigpic

                کامنت

                • khakzad

                  • 2010/03/17
                  • 2034

                  #9
                  نوشته اصلی توسط M_R_M
                  من اجرا کردم مشکلی پیش نیومد
                  بله
                  برای منم تا مرحله انتخاب فایل اجرا شد
                  بعدش که انتخاب کردم دیگه نیاوورد تو اکسل

                  کامنت

                  • ~M*E*H*D*I~

                    • 2011/10/19
                    • 4374

                    #10
                    فایل پیوست با نمونه های dbf رو مشاهده کنید
                    فایل های پیوست شده

                    sigpic

                    کامنت

                    • khakzad

                      • 2010/03/17
                      • 2034

                      #11
                      ممنون
                      اما فایل دی بی اف من هم از بیمه هست
                      چرا پس ارور میده؟
                      این فایل dbf من
                      فایل های پیوست شده

                      کامنت

                      • ~M*E*H*D*I~

                        • 2011/10/19
                        • 4374

                        #12
                        نوشته اصلی توسط khakzad
                        ممنون
                        اما فایل دی بی اف من هم از بیمه هست
                        چرا پس ارور میده؟
                        این فایل dbf من
                        جالبه باز شد ولی وضعیت فونت ها خیلی از فایل من بهتره

                        sigpic

                        کامنت

                        • khakzad

                          • 2010/03/17
                          • 2034

                          #13
                          عجیبه
                          پس چرا واسه من نمیشه
                          البته هدف من خروجی دی بی اف گرفتن از اکسل هست. طوری که بیمه قبول کنه. (چون خیلی سخت می گیره!!)
                          اما نمی دونم چکارش کنم
                          راهنمایی م یتونید بکنید؟برای فونت ها . بگید من بخونمبلکه ی راهی پیدا شد

                          کامنت

                          • ~M*E*H*D*I~

                            • 2011/10/19
                            • 4374

                            #14
                            نوشته اصلی توسط khakzad
                            عجیبه
                            پس چرا واسه من نمیشه
                            البته هدف من خروجی دی بی اف گرفتن از اکسل هست. طوری که بیمه قبول کنه. (چون خیلی سخت می گیره!!)
                            اما نمی دونم چکارش کنم
                            راهنمایی م یتونید بکنید؟برای فونت ها . بگید من بخونمبلکه ی راهی پیدا شد
                            باید از ado.stream استفاده بشه ولی نمیدونم چطور ، ورودی و خروجی گرفتن کاری نداره کد خروجی هم تقریبا مثل همین کد هست دقت کنید بخشی که هایلایت شده تیک خورده باشه
                            Click image for larger version

Name:	04-24-2014 03-45-12 ب-ظ.gif
Views:	1
Size:	20.0 کیلو بایت
ID:	122756

                            sigpic

                            کامنت

                            • shamsololama

                              • 2010/02/15
                              • 940

                              #15
                              نوشته اصلی توسط khakzad
                              عجیبه
                              پس چرا واسه من نمیشه
                              البته هدف من خروجی دی بی اف گرفتن از اکسل هست. طوری که بیمه قبول کنه. (چون خیلی سخت می گیره!!)
                              اما نمی دونم چکارش کنم
                              راهنمایی م یتونید بکنید؟برای فونت ها . بگید من بخونمبلکه ی راهی پیدا شد


                              با درود فراوان

                              برای ورود اطلاعات از یک دیتابیس از تب اینسرت بصورت دیفالت هم انجام میگیره و اگر بخوای بدون کد نویسی این کار رو بکنید کافیه آن فایل رو انتخاب کنید و اینسرت کنید که البته از این طریق هم این فایل دی بی اف فونت های فارسی آن به هم ریخته میاد ولی این کد خوبی که دوست خوبم اقا مهدی زحمت آن رو کشیدن خوبی آن اینه که برای خروجی گرفتن هم میشه استفاده کرد و بجای دستور Select * From از دستور اینسرت استفاده کنید .
                              ---------------------------------------------------------------------------------------------------
                              بمانیم تا کاری کنیم ،نه کاری کنیم تا بمانیم (دکتر شریعتی)
                              shamsololama@yahoo.com
                              09177733411

                              کامنت

                              Working...