اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

طريقة تحويل ملف اكسل الى csv أو VCF


mabeed

الردود الموصى بها

14 hours ago, محمد طاهر said:

جرب التالي

من لوحة التحكم

Control Pannel

Region

Adminstrative

Change System Local

و اختار عربي لاحدى الدول المتاحة

Capture.PNG.3469ef4233354fe3948b22a7c8e988f2.PNG

شكرا أستاذنا العزيز محمد طاهر على الرد

المشكلة ليست على الجهاز ، و إنما  في الملف الذي يتم تحويله ،حيث يظهر  الملف

Vcard بشكل رموز عند تحويله الى

و لكن الاسماء باللغة الانجليزية تظهر بشكل صحيح

قمت بعمل محاولة على GMAIL

تم اظهار الاسماء بالعربي لكن بدون ارقام ،

 

شاكر لك ردك ،،،،

تم تعديل بواسطه وليد حجاب
رابط هذا التعليق
شارك

السلام عليكم

ربما من المناسب ان ترفق عينة من الملف مع تغيير البيانات ، مع توضيح ما تود عمله خطوة بخطوة ليجرب الاخوة معك و يتضح وجود أسلوب اخر من عدمه او ان المشكلة عامة ام لا

  • Like 1
رابط هذا التعليق
شارك

On 2/5/2018 at 5:52 PM, محمد طاهر said:

السلام عليكم

ربما من المناسب ان ترفق عينة من الملف مع تغيير البيانات ، مع توضيح ما تود عمله خطوة بخطوة ليجرب الاخوة معك و يتضح وجود أسلوب اخر من عدمه او ان المشكلة عامة ام لا

و عليكم السلام و رحمة الله و بركاته ،،،

مرفق ملف المراد تحويله الى صيغة VCARD

و ذلك بعد تحويل ملف الاكسل الى صيغة CSV

المشكلة التي تحصل عند التحويل و في حال وجود اسماء بالعربي والانجليزي ، لا توجد مشكلة في تحويل الاسماء بالانجليزي ، أما العربي فتكون على شكل علامات استفهام ؟؟؟؟؟؟؟؟؟؟؟؟

المرفق بصيغة اكسل Xls

الاسماء.xls

هل يوجد كود يجعل الاسماء بالعربي تظهر بدون اي رموز

رابط هذا التعليق
شارك

لماذا الخاص أخي ياسر ؟  أرجو التوضيح

 

الأخ وليد

وجدت هذا الكود، و قام بتصدير السطر الثاني في ملفك بنجاح الي ملف VCF

مرفق الكارت الخاص بالسجل الثاني الذي تم تصديره ، و العربية تظهر بصورة سليمة

OutputVCF.rar

و يمكن تعديله ليصدر السجلات كلها اذا كان هذا هو المطلوب

Sub Create_VCF()

    'Open a File in Specific Path in Output or Append mode

    Dim FileNum As Integer

    Dim iRow As Double

    iRow = 2

    FileNum = FreeFile

    OutFilePath = ThisWorkbook.Path & "\OutputVCF.VCF"

    Open OutFilePath For Output As FileNum

    'Loop through Excel Sheet each row and write it to VCF File

    While VBA.Trim(Sheets("Sheet1").Cells(iRow, 1)) <> ""

        FName = VBA.Trim(Sheets("Sheet1").Cells(iRow, 1))

        LName = VBA.Trim(Sheets("Sheet1").Cells(iRow, 2))

        PhNum = VBA.Trim(Sheets("Sheet1").Cells(iRow, 3))

        Print #FileNum, "BEGIN:VCARD"

        Print #FileNum, "VERSION:3.0"

        Print #FileNum, "N:" & FName & ";" & LName & ";;;"

        Print #FileNum, "FN:" & FName & " " & LName

        Print #FileNum, "TEL;TYPE=CELL;TYPE=PREF:" & PhNum

        Print #FileNum, "END:VCARD"

        iRow = iRow + 1

    Wend

    'Close the File

    Close #FileNum

    MsgBox "Contacts Converted to Saved To: " & OutFilePath

End Sub

و الملف شامل الكود

الاسماء.xls

  • Like 1
رابط هذا التعليق
شارك

 

الأخ القدير الأستاذ محمد ، ظهر لدي الملف كما ترون بالصورة الموضحة أدناة

على شكل رموز ، اشكر لك مجهودك الرائع ، و لكن لا زالت المشكلة قائمة

 

 

 

image.png

رابط هذا التعليق
شارك

هذا هو الملف كما يظهر لدي ، طبعا مازالت الحقول تحتاج لضبط و لكن العربي يظهر سليم

قد يكون الامر مشكلة فى اعدادت الويندوز 

جرب تغيير بعض الامور فى الاعدادت الاقليمية بلوحة التحكم Control pannel

ما نسخة الويندوز و الاوفيس لديك

 

 

Capture.PNG

  • Like 1
رابط هذا التعليق
شارك

أيضا بالاضافة الي الاعدادات السابق ذكرها  راجع تحميل اعدادات اللغة للأوفيس و تأكد من التحميل

SNAG-0001.jpg.0f56e269c08680cce45acbc59dce04b2.jpgproofing.PNG.1e65dd8a2319734605a614c5384be4f4.PNG

59 دقائق مضت, ehab saeed said:

الرجاء التواصل لمن لدية مشكلة بهذا الخصوص 00966598179743

 

لماذا التواصل على الهاتف و لماذا لا تحاول المساعدة هنا  ليستفيد الجميع كما هو متعارف عليه

ارجو التوضيح

 

  • Thanks 1
رابط هذا التعليق
شارك

53 minutes ago, محمد طاهر said:

أيضا بالاضافة الي الاعدادات السابق ذكرها  راجع تحميل اعدادات اللغة للأوفيس و تأكد من التحميل

SNAG-0001.jpg.0f56e269c08680cce45acbc59dce04b2.jpgproofing.PNG.1e65dd8a2319734605a614c5384be4f4.PNG

 

لماذا التواصل على الهاتف و لماذا لا تحاول المساعدة هنا  ليستفيد الجميع كما هو متعارف عليه

ارجو التوضيح

 

بارك الله فيك أخي ، بحاول اليوم

بس لماذ ا يظهر الاسم  بجانب الرقم ،

رابط هذا التعليق
شارك

السلام عليكم 

الكود يحتاج لتعديل . و لكن الهدف آلان هو مشكلة اللغة العربية فان حلت تعدل الكود بإذن الله و اعتقد ان المشكلة مشكلة اوفيس او ويندوز و ليس كود 

و صراحة لم انتبه الي الاكواد الموجودة فى الضفحة الاولى من الموضوع الا الان ،ويبدو لي انها افضل من هذا و لم اجربها بعد 

 

احد الحلول هو ان تعيد تحميل الاوفيس 

او على الاقل ال 

Proofing Tool

 

https://support.office.com/en-us/article/language-accessory-pack-for-office-82ee1236-0f9a-45ee-9c72-05b026ee809f?ui=en-US&rs=en-US&ad=US

 

 

 

  • Thanks 1
رابط هذا التعليق
شارك

On 2/8/2018 at 2:41 PM, محمد طاهر said:

السلام عليكم 

الكود يحتاج لتعديل . و لكن الهدف آلان هو مشكلة اللغة العربية فان حلت تعدل الكود بإذن الله و اعتقد ان المشكلة مشكلة اوفيس او ويندوز و ليس كود 

و صراحة لم انتبه الي الاكواد الموجودة فى الضفحة الاولى من الموضوع الا الان ،ويبدو لي انها افضل من هذا و لم اجربها بعد 

 

احد الحلول هو ان تعيد تحميل الاوفيس 

او على الاقل ال 

Proofing Tool

 

https://support.office.com/en-us/article/language-accessory-pack-for-office-82ee1236-0f9a-45ee-9c72-05b026ee809f?ui=en-US&rs=en-US&ad=US

 

 

 

مشكور أخي أ/ محمد طاهر على مجهودك الرائع

و بالنسبة للكود هل يتعامل مع البيانات بغض النظر عن عدد الأسطر ؟

و أين يكون تعديل الكود من اجل اظهار الاسم فقط بدون ظهور الرقم بجانبه

 

لك جزيل الشكر والتقدير

 

رابط هذا التعليق
شارك

السلام عليكم

ريما اكود وجدت الحل لموضوع اللغة العربية 

حيث تبين انه يمكن تحديد الترميز اثناء تكوين الملف

و قد عرفت ذلك عندما سجلت احد العناوين بالعربية و صدرته وجدت ان الصيغة قد تغيرت لتشمل ترميز العربية CHARSET=windows-1256 و كان محتوي ملف ال CVF  كالتالي عندما فتحته بمجرر النصوص

BEGIN:VCARD
VERSION:2.1
N;LANGUAGE=en-us;CHARSET=windows-1256:عرفة;محمد;طاهر
FN;CHARSET=windows-1256:محمد طاهر عرفة
TEL;HOME;VOICE:666666
TEL;CELL;VOICE:777777
END:VCARD

و عليه يمكن تعديل كود الترميز ليحوي ترميز العربية ، و يبنى الملف بنفس الطريقة فى الملف اعلاه

ساحاول باذن الله الآن  و احاول ايضا تعديل الكود ليشمل الحقول التي تريدها كما فى السطور السابقة ، الاسم و رقم المنزل و رقم الهاتف

 

 

  • Thanks 1
رابط هذا التعليق
شارك

الماكرو بعد التعديل ليصدر اول تسعة سجلات للتجربة

تم ايضا محاولة تثبيت ترميز اللغة العربية و اختيار الثلاثة حقول التي تريد الاسم و هاتف المنزل و المحمول

Sub Create_VCF()
    Dim iRow, FileNum
For iRow = 2 To 10
     FileNum = FreeFile

        CNAMe = ActiveSheet.Cells(iRow, 1)
        MTel = ActiveSheet.Cells(iRow, 2)
        HTel = ActiveSheet.Cells(iRow, 3)

        OutFilePath = ThisWorkbook.Path & "\" & CNAMe & ".VCF"
        Open OutFilePath For Output As FileNum
            Print #FileNum, "BEGIN:VCARD"
            Print #FileNum, "VERSION:2.1"
            Print #FileNum, "N;LANGUAGE=en-us;CHARSET=windows-1256:" & CNAMe
            Print #FileNum, "FN;CHARSET=windows-1256:" & CNAMe
            Print #FileNum, "TEL;HOME;VOICE:" & HTel
            Print #FileNum, "TEL;CELL;VOICE:" & MTel
            Print #FileNum, "END:VCARD"
        Close #FileNum
Next iRow
End Sub

لتجربة الملف يمكنك تغيير عدد السجلات التى ترغب فى تصديرها بتغيير الرقم 10 الي الرقم الذي ترغب به ، حاليا اختيار الرقم 10 يصدر اول تسع سجلات (الي الصف العاشر فى الملف)

ايضا يمكنك تعديل البداية بدلا من 2 التي تمثل السطر الثاني الي اي رقم ترغب به ليبدأ التصدير منه من لكن ليس رقم 1 لانه يحوي اسماء الحقول

 

 

ExporttoCVF.xls

  • Like 1
رابط هذا التعليق
شارك

الشكر الجزيل لك أخي محمد طاهر على مجهودك ، و لكن في مشكلة بتظهر كما هو مبين في الصورة ادناة عند الضغط على تشغيل الكود

image.png.56bf474ca0948dbedd447a109e85dae5.png

رابط هذا التعليق
شارك

 السلام عليكم

لقد جربته على جهازين مختلفين و يعمل جيدا ، و الجهازين بهما اوفيس 2016

ربما بعد الكود غير منوافق مع النسخة لديك

افتح محرر الاكود و اختار 

Debug

compile VBA Project

و أخبرني اذا توقف لكود عند سطر معين او اعطي رسالة مختلفة

  • Like 1
رابط هذا التعليق
شارك

26 minutes ago, محمد طاهر said:

 السلام عليكم

لقد جربته على جهازين مختلفين و يعمل جيدا ، و الجهازين بهما اوفيس 2016

ربما بعد الكود غير منوافق مع النسخة لديك

افتح محرر الاكود و اختار 

Debug

compile VBA Project

و أخبرني اذا توقف لكود عند سطر معين او اعطي رسالة مختلفة

الاوفيس المستخدم هو 2007 ، والنافذة التي اشرت اليها غير مفعلة ؟

و عندما اقوم بالضغط على F8 يظهر اللون الاصفر على اول صف في الكود

image.png.9d40c677395bcb555e5bdd6331be4385.png

13 minutes ago, وليد حجاب said:

الاوفيس المستخدم هو 2007 ، والنافذة التي اشرت اليها غير مفعلة ؟

و عندما اقوم بالضغط على F8 يظهر اللون الاصفر على اول صف في الكود

image.png.9d40c677395bcb555e5bdd6331be4385.png

ظهرت هذه الاشارة على السطر المبين في الصورة ادناه بعد الضغط على debug

image.png.aea776dec90c17642bf108bf2449c088.png

تم تعديل بواسطه وليد حجاب
رابط هذا التعليق
شارك

  للاسف ليس لدي نسخة 2007 لاجرب معك

ساحاول لاحقا تعديل الكود ببديل اخر  باذن الله

او ربما يفيدك احد الاخوة بالتعديل المطلوب

  • Thanks 1
رابط هذا التعليق
شارك

1 ساعه مضت, mazin55 said:

الاستاذ محمد طاهر 

 سلمت يمناك اخي كنت اعاني من نفس المشكلة وتمت العملية بنجاح بعد

تجربة ملفك المرفق 

تحيتي وتقديري

الحمد لله ، شكرا على الافادة

أخي وليد ، اذا كان الكود السابق الذي كان يصدر الملف بالاسم مدمجا به الرقم ، قد عمل معك

فجرب فى الكود الاخير استبدال طريقة تعريف المتغيرات

أي استبدل السطر التالي

Dim iRow, FileNum

بالتالي

Dim FileNum As Integer

    Dim iRow As Double

 

أو

Dim iRow, FileNum as integer

 

  • Like 1
رابط هذا التعليق
شارك

On 2/11/2018 at 10:23 AM, وليد حجاب said:

الاوفيس المستخدم هو 2007 ، والنافذة التي اشرت اليها غير مفعلة ؟

و عندما اقوم بالضغط على F8 يظهر اللون الاصفر على اول صف في الكود

 

ظهرت هذه الاشارة على السطر المبين في الصورة ادناه بعد الضغط على debug

image.png.aea776dec90c17642bf108bf2449c088.png

يتوقف في السطرالمبين في هذه الصورة

 

تم تعديل بواسطه وليد حجاب
رابط هذا التعليق
شارك

صراحة من الصعب التجربة دون وجود نسخة الاوفيس 2007

و من الافضل ان تحاول ترقية النسخة اذا تيسر لك ذلك

من ناحية اخري جرب التالي:

اولا عند توقف الكود قف بالماوس عند كل متغير فى السطر الاصفر ، و اكتب القيمة التي تظهر لك هنا

ثانيا جرب تعريف المتغيرات كلها فى البداية

    Dim iRow, FileNum As Integer
        Dim OutFilePath As String

ثالثا 

افتح 

Tools 

references 

واكتب ما هي ال 

Missing references

التي تظهر  و اكتبها هنا

ثم بعد ذلك جرب ازالتها من الشاشة و جرب مرة اخرى 

 

  • Thanks 1
رابط هذا التعليق
شارك

زائر
هذا الموضوع مغلق.
×
×
  • اضف...

Important Information