كيفية نسخ ملف excel باستخدام vba؟
يمكنك استخدام التعليمات البرمجية لـ VBA لنسخ ملف (مصنف) من مجلد إلى آخر أو يمكنك أيضًا نسخ ملف إلى نفس المجلد باستخدام اسم مختلف.
في هذا البرنامج التعليمي، سنرى كيفية كتابة التعليمات البرمجية في كلا الاتجاهين. تحتاج هنا إلى استخدام FileSystemObject الذي يوفر الوصول إلى الملفات والمجلدات في Windows.
انسخ ملف Excel إلى مجلد منفصل
Sub myMacro() Dim myFile As Object Set myFile = CreateObject("Scripting.FileSystemObject") Call myFile.CopyFile("C:\Users\admin\Desktop\folder\test-file.xlsx", "C:\Users\admin\Desktop\", True) End Sub
لكتابة الكود أعلاه:
- أولا، عليك أن تعلن عن متغير.
- بعد ذلك، تحتاج إلى تحديد FileSystemObject للمتغير الذي حددته للتو.
- بعد ذلك، تحتاج إلى تعيين موقع المصدر بطريقة “CopyFile”.
- في النهاية، قم بتعيين موقع المجلد الذي تريد لصقه فيه.
عند تشغيل هذا الماكرو ، يقوم بنسخ “ملف نصي” لمصنف Excel من المجلد ولصقه في الموقع الذي حددناه في الكود.
انسخ ملفًا وأعد تسميته
عند محاولة نسخ ملف ولصقه في نفس الموقع، هناك احتمال كبير أن يظهر لك VBA خطأ. في هذه الحالة، أفضل طريقة هي إعادة تسمية الملف عند نسخه.
Call myFile.CopyFile("C:\Users\admin\Desktop\folder\test-file.xlsx", "C:\Users\admin\Desktop\", True)
أعلاه هو رمز السطر الذي استخدمته في الطريقة السابقة. أنت الآن بحاجة إلى إجراء تغيير على هذا الصف فقط. بالنسبة لموقع الوجهة، تحتاج إلى إضافة الملف الذي تريد استخدامه للملف الجديد.
Call myFile.CopyFile("C:\Users\admin\Desktop\folder\test-file.xlsx", "C:\Users\admin\Desktop\folder\test-file1.xlsx ", True)
عند تشغيل هذا الرمز، فإنه ينسخ الملف (text-file.xlsx) من المجلد وينسخه إلى نفس المجلد باسم مختلف (test-file1.xlsx).
Dim myFile As Object Set myFile = _ CreateObject("Scripting.FileSystemObject") Call myFile.CopyFile("C:\Users\admin\Desktop\folder\test-file.xlsx", _ "C:\Users\admin\Desktop\folder\test-file1.xlsx", True) End Sub
الدروس ذات الصلة
- مصنف تنشيط VBA (ملف Excel)
- مصنف إغلاق VBA (ملف Excel)
- VBA الجمع بين المصنفات (ملفات Excel)
- VBA إنشاء مصنف جديد (ملف Excel)
- VBA حذف المصنف (ملف Excel)