1c إنشاء ملف Excel برمجيًا. أيهما أفضل - "1C" أم "Excel"؟ بضع كلمات عن الأخطاء المحتملة

مقدمة.

يعرف الكثير من الناس أن برنامج Excel أقدم بكثير من 1C. في رأيي ، هذا منتج ناجح للغاية ، ولم أسمع أي شكاوى حوله. برنامج Excel بسيط ومتعدد الاستخدامات. إنه قادر على إجراء ليس فقط العمليات الحسابية البسيطة ، ولكن أيضًا العمليات الحسابية المعقدة والرسوم البيانية وما إلى ذلك. أعرف أمثلة عندما احتفظت المؤسسات ، قبل التبديل إلى 1C ، بجزء من المحاسبة في Excel. يستخدم الكثيرون الآن بالتوازي برنامجين. في هذه المقالة ، سننظر في طرق تبادل البيانات بين 1C و Excel.

الجداول 1C و Excel.

للراحة ، يقوم العديد من المستخدمين بحفظ جداول 1C ( نماذج الطباعة) بتنسيق Excel (* .xls). بعد ذلك ، يتم إجراء مجموعات وعمليات فرز وحسابات مختلفة وما إلى ذلك في الملف الناتج. هذا يرجع إلى حقيقة أنه في جداول 1C لا توجد وظائف ضخمة كما هو الحال في جداول Excel. ولكن في الإصدار 1C 8.0 ، توجد ابتكارات تجعل العمل مع الجداول أكثر راحة.

يحتوي موقع 1C على الويب (http://www.1c.ru/) على برنامج مفيد يسمح لك بفتح جداول 1C في Excel وحفظ ورقة Excel كجدول 1C. يكون هذا مفيدًا إذا لم يتم حفظ الجدول 1C بتنسيق Excel ، ولم يتم تثبيت 1C على الكمبيوتر حيث تحتاج إلى فتح هذا الجدول. نعم ، وتذكر باستمرار أنك بحاجة إلى حفظ جدول 1C بتنسيق Excel ، فلن تكون هناك حاجة لذلك.

يمكن العثور على معلومات كاملة عن البرنامج هنا.
يمكنك تحميل البرنامج من هنا ( أرشيف مضغوط 682739 بايت).

تعليق:في Excel ، الفاصل العشري هو "،". لذلك ، قبل حفظ الجدول 1C بتنسيق Excel ، استبدل فاصلًا آخر فيه (على سبيل المثال ، ".") بـ "،". خلاف ذلك ، لن يتمكن Excel من إجراء العمليات الحسابية بهذه الأرقام ، أو لن يتم عرضها كأرقام على الإطلاق. على سبيل المثال ، في الجدول 1C ، سيتم عرض "15.2" في Excel كـ "15 فبراير".

الحصول على البيانات من Excel.

يتم الوصول من 1C إلى Excel من خلال OLE. على سبيل المثال ، الكود
محاولة
استثناء
إعلام (وصف الخطأ () +
);
يعود؛
نهاية المحاولة
سيسمح لنا بالوصول من خلال متغير "Excel" إلى التشغيل تطبيق Excel. وبعد ذلك يمكنك بالفعل الوصول إلى الكتاب (ملف) والورقة والخلية بالبيانات. فيما يلي أمثلة التعليمات البرمجية.

فتح كتاب (ملف):
كتاب = إكسل. المصنفات. فتح (PathToFile) ؛
مسار الملف - مسار كاملإلى ملف مصنف Excel.

اختيار ورقة كتاب للعمل معها:
أو
ورقة = كتاب. أوراق العمل (اسم الورقة) ؛
SheetNumber هو رقم الورقة في الكتاب ، SheetName هو اسم الورقة في الكتاب.

الحصول على قيمة خلية ورقة:
القيمة = الورقة. الخلايا (رقم الخط ، رقم العمود). قيمة؛

مهم:لا تنس إضافة كود Excel إلى الحقل للقيام بالإجراءات اللازمة. يترك()؛ ، وإلا ستظل عملية التشغيل غير مكتملة وستستهلك ذاكرة ومعالج الكمبيوتر.

إخراج البيانات إلى Excel.

لإخراج (تحميل) البيانات إلى Excel ، يجب عليك إما فتح مصنف موجود أو إنشاء مصنف جديد وتحديد ورقة عمل لإخراج البيانات. تم شرح فتح كتاب موجود أعلاه ، ولكن لإنشاء كتاب جديد ، تحتاج إلى استخدام الكود التالي:
محاولة
Excel = CreateObject ("Excel.Application") ؛
استثناء
إعلام (وصف الخطأ () +
"لم يتم تثبيت Excel على هذا الحاسوب!" );
يعود؛
نهاية المحاولة
كتاب = إكسل. المصنفات. يضيف()؛

نظرًا لأنه عند إنشاء مصنف في Excel ، يتم إنشاء الأوراق تلقائيًا (أدوات-> خيارات-> عام-> أوراق في مصنف جديد) ، ما عليك سوى تحديد الورقة للعمل معها:
ورقة = كتاب. أوراق العمل (SheetNumber) ؛
أو أضف ورقة جديدة إلى الكتاب ، إذا لزم الأمر:
ورقة = كتاب. أوراق. يضيف()؛
الخطوة التالية هي تعيين قيمة الخلية:
ملزمة. الخلايا (رقم الخط ، رقم العمود). القيمة = القيمة ؛
RowNumber و ColumnNumber - رقم الصف ورقم العمود عند التقاطع الذي توجد به الخلية.
وفي النهاية ، تحتاج إلى تسجيل الكتاب الذي تم إنشاؤه:
محاولة
كتاب . SaveAs (PathToFile) ،
استثناء
إعلام (وصف الخطأ ()
+ "لم يتم حفظ الملف!");
يعود؛
نهاية المحاولة
PathToFile - المسار الكامل لملف مصنف Excel (بما في ذلك الاسم).
مهم:تذكر أن أسماء الملفات يجب ألا تحتوي على \ /: *؟ ">< |.

الأساليب شائعة الاستخدام لقراءة / تعيين القيم في Excel.

Excel = CreateObject ("Excel.Application") ؛ الوصول إلى تطبيق Excel.
اكسل. مرئي = رؤية ؛ 0 - Excel غير مرئي ، 1 - مرئي.
كتاب = إكسل. المصنفات. يضيف()؛ إنشاء مصنف جديد (ملف) إكسل.
كتاب . SaveAs (اسم الملف) ؛ حفظ مصنف Excel.
ورقة = كتاب. أوراق عمل. يضيف()؛ إضافة ورقة جديدة للكتاب.
كتاب = إكسل. المصنفات. فتح (اسم الملف) ؛ فتح مصنف موجود (ملف) Excel.
ورقة = كتاب. أوراق العمل (SheetNumber) ؛ إعداد ورقة كصفحة عمل بها numberSheetNumber.
ملزمة. الاسم = اسم الورقة ؛ تسمية ورقة عمل
ملزمة. اعداد الصفحة . تكبير = مقياس ؛ يحدد خيار Scale page (من 10 إلى 400).
ملزمة. اعداد الصفحة . الاتجاه = الاتجاه ؛ الاتجاه: 1 - عمودي ، 2 - أفقي.
ملزمة. اعداد الصفحة . LeftMargin = Excel. السنتيمتر إلى النقاط (السنتيمتر) ؛ يضبط الحد الأيسر (بالسنتيمتر).
ملزمة. اعداد الصفحة . TopMargin = Excel. السنتيمتر إلى النقاط (السنتيمتر) ؛ تعيّن الحد الأعلى (بالسنتيمتر).
ملزمة. اعداد الصفحة . RightMargin = Excel. السنتيمتر إلى النقاط (السنتيمتر) ؛ يحدد الحد الأيمن (بالسنتيمتر).
ملزمة. اعداد الصفحة . BottomMargin = Excel. السنتيمتر إلى النقاط (السنتيمتر) ؛ يضبط الحد الأدنى (بالسنتيمتر).
ملزمة. الأعمدة (ColumnNumber). عرض العمود = العرض ؛ تعيين عرض العمود.
ملزمة. الخلايا (رقم الخط ، رقم العمود). القيمة = القيمة ؛ إدخال البيانات في خلية.
ملزمة. الخلايا (رقم الخط ، رقم العمود). الخط. الاسم = اسم الخط ؛ ضبط الخط في خلية.
ملزمة. الخلايا (رقم الخط ، رقم العمود). الخط. الحجم = حجم الخط ؛ عيّن حجم الخط في خلية.
ملزمة. الخلايا (رقم الخط ، رقم العمود). الخط. جريئة = جريئة ؛ 1 - جريء ، 0 - عادي.
ملزمة. الخلايا (رقم الخط ، رقم العمود). الخط. مائل = مائل ؛ 1 - خط مائل ، 0 - عادي.
ملزمة. الخلايا (رقم الخط ، رقم العمود). الخط. تسطير = مسطر ؛ 2 - تحته خط ، 1 - لا.
ملزمة. الخلايا (رقم الخط ، رقم العمود). NumberFormat = تنسيق ؛ قم بتعيين تنسيق بيانات الخلية.
ملزمة. الخلايا (رقم الخط ، رقم العمود). الحدود. Linestyle = LineType ؛ تعيين حدود الخلية. 1 - صلب رقيق.

هذه الطريقة بسيطة. جوهرها هو أن الكائن SpreadsheetDocumentله طرق:

  • اكتب (< ИмяФайла>, < ТипФайлаТаблицы >) لتحميل البيانات إلى ملف ؛
  • يقرأ (< ИмяФайла>, < СпособЧтенияЗначений >) لتحميل البيانات من ملف.

انتباه!

يتوفر أسلوب الكتابة () على كل من العميل والخادم. طريقة القراءة () متاحة فقط على جانب الخادم. بحاجة إلى تذكر هذا
عند التخطيط للتفاعل بين العميل والخادم.

فكر في مثال للادخار مستند جدول البياناتإلى ملف. من الضروري إنشاء كائن TableDocument وتعبئته بأي شكل من الأشكال ، و التفريغيتم تنفيذ الملف بسطر واحد فقط:

TabDoc . اكتب (FilePath، SpreadsheetDocumentFileType.XLSX);

هنا TabDoc- جدول بيانات تم إنشاؤه ، مسار الملف- اسم الملف المراد تحميله ، SpreadsheetDocumentFileType.XLSX- تنسيق الملف الذي تم إنشاؤه. يتم دعم تنسيقات Excel التالية:

  • XLS95- تنسيق Excel 95;
  • XLS97 - تنسيق Excel 97 ؛
  • XLSX هو تنسيق Excel 2007.

TabDoc = جدول بيانات جديد ؛
TabDoc . اقرأ (PathToFile ، WayToReadSpreadsheetDocumentValues.Value);

هنا مسار الملف- المسار إلى ملف Excel الذي تم تنزيله. WayToReadValuesSpreadDocument.Valueيحدد كيفية تفسير البيانات المقروءة من المستند المصدر. خيارات متاحه:

  • معنى؛
  • نص.

الصرف عبر OLE

ربما يكون التبادل من خلال تقنية أتمتة OLE هو الخيار الأكثر شيوعًا برنامج العملمع ملفات Excel. يسمح لك باستخدام جميع الوظائف التي يوفرها Excel ، ولكنه أبطأ من الطرق الأخرى. يتطلب التبادل عبر OLE تثبيت MS Excel:

  • على كمبيوتر المستخدم النهائي ، إذا حدث التبادل من جانب العميل ؛
  • على 1C: كمبيوتر خادم المؤسسة ، إذا حدث التبادل على جانب الخادم.

مثال التفريغ:

// إنشاء كائن COM
Excel = COMObject جديد ("Excel.Application") ؛
// تعطيل التحذيرات والأسئلة
اكسل . displayalerts = false ؛
// إنشاء كتاب جديد
كتاب = إكسل. المصنفات. يضيف()؛
// الوضع على الورقة الأولى
ملزمة = كتاب. أوراق عمل (1)؛

// اكتب قيمة إلى الخلية
ملزمة . الخلايا (RowNumber ، ColumnNumber). القيمة = CellValue ؛

// حفظ الملف
كتاب . SaveAs (اسم الملف) ؛


اكسل . يترك()؛
Excel = 0 ؛

أمثلة قراءة:

// -- الخيار 1 --

// إنشاء كائن COM
Excel = COMObject جديد ("Excel.Application") ؛
// كتاب مفتوح
كتاب = إكسل. المصنفات. يفتح( مسار الملف) ؛

ملزمة = كتاب. أوراق عمل (1)؛

// اغلق الكتاب
كتاب . إغلاق (0) ؛

// أغلق Excel وحرر الذاكرة
اكسل . يترك()؛
Excel = 0 ؛

// -- الخيار 2 --

// كتاب مفتوح
كتاب = GetCOMObject ( مسار الملف) ؛
// الوضع على الورقة المطلوبة
ملزمة = كتاب. أوراق عمل (1)؛

// اقرأ قيمة الخلية ، وعادة ما يكون هذا هو المكان الذي توجد فيه حلقة تجاوز الخلية
CellValue = ورقة. الخلايا (RowNumber ، ColumnNumber). قيمة؛

// اغلق الكتاب
كتاب . طلب. Quiر () ؛

ل تجاوزجميع الصفوف المملوءة في ورقة Excel ، يمكنك استخدام الحيل التالية:

// -- الخيار 1 --
عدد الصفوف = الورقة. الخلايا (1 ، 1). الخلايا الخاصة (11). صف؛
بالنسبة إلى RowNumber = 1 بواسطة عدد الصفوف في التكرار
CellValue = ورقة. الخلايا (RowNumber ، ColumnNumber). قيمة;
نهاية الدورة

// -- الخيار 2 --
رقم الخط = 0 ؛
بينما صحيح الحلقة
LineNumber = رقم الخط + 1 ،
CellValue = ورقة. الخلايا (RowNumber ، ColumnNumber). قيمة؛
إذا لم يتم تنفيذ ValueFilled (CellValue) ثم
إجهاض
إنهاء إذا؛
نهاية الدورة

بدلاً من اجتياز جميع خطوط الورقة بالتتابع ، يمكنك ذلك تفريغ جميع البيانات في مصفوفةوالعمل معه. سيكون هذا الأسلوب أسرع عند قراءة كمية كبيرة من البيانات:

TotalColumns = ورقة. الخلايا (1 ، 1). الخلايا الخاصة (11). عمود؛
إجمالي الصفوف = ورقة. الخلايا (1 ، 1). الخلايا الخاصة (11). صف؛

منطقة = ورقة. النطاق (ورقة. خلايا (1 ، 1) ، قائمة. خلايا (TotalRows ، TotalColumns)) ؛
بيانات = المساحة. قيمة. تفريغ();

يسرد الجدول أدناه الخصائص والأساليب الأكثر طلبًا للعمل مع Excel عبر OLE:

فعل شفرة تعليق
العمل مع التطبيق
ضبط رؤية نافذة التطبيق اكسل . مرئي= خطأ ؛
ضبط وضع عرض التحذير (عرض / عدم عرض) اكسل . عرض التنبيهات= خطأ ؛
إغلاق التطبيق اكسل . يترك()؛
العمل مع كتاب
أنشئ كتابًا جديدًا كتاب = إكسل. المصنفات. يضيف();
فتح مصنف موجود كتاب = إكسل. المصنفات. افتح (FileName);
حفظ كتاب كتاب . SaveAs (اسم الملف);
إغلاق الكتاب كتاب . إغلاق (0) ؛
العمل مع ورقة
ضبط الورقة الحالية ملزمة = كتاب. أوراق العمل (SheetNumber);
تحديد الاسم ملزمة . الاسم = الاسم;
وضع الحماية ملزمة . يحمي();
إزالة الحماية ملزمة . أزل الحماية();
ضبط اتجاه الصفحة ملزمة . اعداد الصفحة. الاتجاه = 2; 1 - عمودي ، 2 - أفقي
ضبط الحد الأيسر ملزمة . اعداد الصفحة. LeftMargin = Excel. السنتيمتر إلى النقاط (السنتيمتر);
تحديد الحد الأعلى ملزمة . اعداد الصفحة. TopMargin = Excel. السنتيمتر إلى النقاط (السنتيمتر);
تحديد الحد الصحيح ملزمة . اعداد الصفحة. RightMargin = Excel. السنتيمتر إلى النقاط (السنتيمتر);
تحديد الحد الأدنى ملزمة . اعداد الصفحة. BottomMargin = Excel. السنتيمتر إلى النقاط (السنتيمتر);
العمل مع الصفوف والأعمدة والخلايا
ضبط عرض العمود ملزمة . الأعمدة (ColumnNumber). عرض العمود = العرض;
إزالة خط ملزمة . الصفوف (RowNumber). يمسح();
حذف عمود ملزمة . الأعمدة (ColumnNumber). يمسح()؛
حذف خلية ملزمة . الخلايا (RowNumber ، ColumnNumber). يمسح();
تحديد القيمة ملزمة . الخلايا (RowNumber ، ColumnNumber). القيمة = القيمة;
دمج الخلايا ملزمة . النطاق (عدد الخلايا ، رقم العمود ، رقم العمود) ، خلايا (RowNumber1 ، ColumnNumber1)). دمج();
تثبيت الخط ملزمة . الخلايا (RowNumber ، ColumnNumber). الخط. الاسم = اسم الخط;
تحديد حجم الخط ملزمة . الخلايا (RowNumber ، ColumnNumber). الخط. الحجم = حجم الخط;
إعداد الخط الغامق ملزمة . الخلايا (RowNumber ، ColumnNumber). الخط. عريض = 1 ; 1 - جريء ، 0 - عادي
وضع مائل ملزمة . الخلايا (RowNumber ، ColumnNumber). الخط. مائل = 1 ; 1 - مائل ، 0 - عادي
تعيين خط مسطر ملزمة . الخلايا (RowNumber ، ColumnNumber). الخط. تسطير = 2 ; 2 - تحته خط ، 1 - لا

من أجل معرفة الخاصية التي يجب تغييرها أو الطريقة التي يجب الاتصال بها ، يمكنك استخدام وحدات الماكرواكسل. إذا قمت بتسجيل ماكرو بالإجراءات المطلوبة ، فيمكنك أن ترى كود البرمجةعلى VBA تسجيل الماكرو.

باستخدام COMSafeArray

عند تفريغ كميات كبيرة من البيانات من 1C إلى Excel ، يمكنك استخدام الكائن للإسراع COMSafeArray. كما هو محدد بواسطة مساعد بناء الجملة ، فإن COMSafeArray عبارة عن غلاف كائن فوق صفيف متعدد الأبعاد SafeArrayمن COM. يسمح لك بإنشاء SafeArray واستخدامه لتبادل البيانات بين كائنات COM. ببساطة ، هذه مجموعة من القيم التي يمكن استخدامها للتبادل بين التطبيقات باستخدام تقنية OLE.

// إنشاء COMSafeArray
ArrayCom = COMSafeArray جديد ("VT_Variant" ، TotalColumns ، TotalRows);
// تعبئة COMSafeArray
ل Str = 0 إجمالي الصفوف - حلقة واحدة
ل العدد = 0 إجمالي الأعمدة - دورة واحدة
ArrayCom . SetValue (رقم ، شارع ، قيمة);
نهاية الدورة
نهاية الدورة
// تعيين منطقة الورقة قيم التفوقمن COMSafeArray
ملزمة . النطاق (ورقة. خلايا (1 ، 1) ، قائمة. خلايا (TotalRows ، TotalColumns)). القيمة = ArrayCom;

الصرف عبر ADO

يعد ملف Excel ، عند تبادله من خلال ADO ، قاعدة بيانات يمكن الوصول إليها باستخدام استعلامات SQL. لا يلزم تثبيت MS Excel ، ولكن يلزم وجود برنامج تشغيل ODBC ، سيتم من خلاله تنفيذ الوصول. يتم تحديد برنامج تشغيل ODBC المستخدم عن طريق تحديد سلسلة الاتصال بالملف. عادةً ما يكون برنامج التشغيل المطلوب مثبتًا بالفعل على الكمبيوتر.

يعتبر التبادل من خلال ADO أسرع بشكل ملحوظ من التبادل من خلال OLE ، ولكن عند التفريغ ، لا توجد طريقة لاستخدام وظائف Excel لتزيين الخلايا ، ووضع علامات على الصفحات ، وإعداد الصيغ ، وما إلى ذلك.

مثال التفريغ:


الاتصال = COMObject جديد ("ADODB.Connection") ؛


مُجَمَّع . ConnectionString = "

| مصدر البيانات = " + اسم الملف + "؛
;
مُجَمَّع . يفتح()؛ // فتح الاتصال

// قم بإنشاء كائن COM للأمر
الأمر = COMObject جديد ("ADODB.Command") ؛
فريق

// تعيين نص الأمر لإنشاء جدول
فريق . نص الأمر = "CREATE TABLE [Sheet1] (Column1 char (255)، Column2 date، Column3 int، Column4 float)";
فريق . ينفذ()؛ // تنفيذ الأوامر

// تعيين نص الأمر لإضافة صف جدول
فريق . نص الأمر = "INSERT INTO [Sheet1] (Column1، Column2، Column3، Column4) القيم ('abvgdeo'، '8/11/2017'، '12345'، '12345،6789')";
Command.Execute () ؛ // تنفيذ الأوامر

// حذف الأمر وإغلاق الاتصال
الأمر = غير محدد ؛
مُجَمَّع . يغلق();
اتصال = غير محدد;

لإنشاء ورقة جديدة وتشكيل هيكلها ، يمكنك استخدام الكائنات كتالوج ADOXو ADOX.Table. في هذه الحالة ، سيبدو الرمز بالشكل التالي:

// إنشاء كائن COM للعمل مع الكتاب
كتاب = COMObject جديد ("ADOX.Catalog") ؛
كتاب . ActiveConnection = اتصال ؛

// قم بإنشاء كائن COM للعمل مع بنية البيانات على الورقة
Table = New COMObject ("ADOX.Table") ؛
طاولة . الاسم = "ورقة 1" ؛
طاولة . الأعمدة. إلحاق ("Column1"، 202) ؛
طاولة . الأعمدة. إلحاق ("Column2"، 7) ؛
طاولة . الأعمدة. إلحاق ("Column3"، 5) ؛
طاولة . الأعمدة. إلحاق ("العمود 4" ، 5) ؛

// قم بإنشاء ورقة في الكتاب بالهيكل الموصوف
كتاب . الجداول. إلحاق (جدول) ؛
الجدول = غير محدد ؛
كتاب = غير محدد ؛

في المثال أعلاه ، في الطريقة

طاولة . الأعمدة. ألحق("العمود 1" ، 202) ؛

تحدد المعلمة الثانية نوع العمود. المعلمة اختيارية ، فيما يلي بعض قيم نوع العمود:

  • 5 - مزدوج ؛
  • 6 - العملة الإعلانية ؛
  • 7 - تاريخ ؛
  • 11 - منطقية ؛
  • 202 - adVarWChar ؛
  • 203-adLongVarWChar.

مثال قراءة:

// إنشاء كائن COM للاتصال
الاتصال = COMObject جديد ("ADODB.Connection") ؛

// تعيين سلسلة الاتصال
مُجَمَّع . ConnectionString = "
| الموفر = Microsoft.ACE.OLEDB.12.0 ،
| مصدر البيانات = " + اسم الملف + "؛
| الخصائص الممتدة = "" Excel 12.0 XML ؛ HDR = نعم "" ؛ ";
مُجَمَّع . يفتح()؛ // فتح الاتصال

// إنشاء كائن COM لتلقي التحديد
التحديد = COMObject جديد ("ADODB.Recordset") ؛
RequestText = "حدد * من [Sheet1 $]";

// تنفيذ الطلب
عينة . فتح (نص الاستعلام ، اتصال) ؛

// تجاوز نتيجة التحديد
بينما لا يتم أخذ العينات. EOF () حلقة
ColumnValue1 = التحديد. مجالات. العنصر ("Column1"). قيمة ; // الرجوع باسم العمود
قيمة العمود 2 = التحديد. مجالات. البند (0). قيمة؛ // استرجاع بفهرس العمود
عينة . MoveNext () ،
نهاية الدورة

عينة . يغلق()؛
عينة = غير محدد ؛
مُجَمَّع . يغلق()؛
اتصال = غير محدد ؛

في سلسلة الاتصال ، المعلمة HDRيحدد كيف سيتم إدراك السطر الأول على الورقة. الخيارات الممكنة:

  • نعم - يُنظر إلى السطر الأول على أنه أسماء الأعمدة. يمكن الوصول إلى القيم بالاسم وفهرس العمود.
  • NO - يتم أخذ السطر الأول كبيانات. لا يمكن الوصول إلى القيم إلا من خلال فهرس العمود.

في الأمثلة المقدمة ، يتم النظر فقط في عدد قليل من كائنات ADO. يتكون نموذج كائن ADO من الكائنات التالية:

  • اتصال؛
  • يأمر؛
  • مجموعة السجلات.
  • سِجِلّ؛
  • مجالات؛
  • تدفق؛
  • أخطاء.
  • حدود؛
  • ملكيات.

تحميل بدون برمجة

لحفظ البيانات من 1C إلى Excel ، لا يُنصح دائمًا باللجوء إلى البرمجة. إذا كان المستخدم في وضع Enterprise يمكنه عرض البيانات المطلوبة للتحميل ، فمن الممكن حفظها في Excel بدون برمجة.

لحفظ مستند جدول بيانات (على سبيل المثال ، نتيجة تقرير) ، يمكنك استدعاء الأمر يحفظأو حفظ باسم ...القائمة الرئيسية.

في النافذة التي تفتح ، تحتاج إلى تحديد الدليل واسم وتنسيق الملف المحفوظ.

لحفظ البيانات قوائم ديناميكية(على سبيل المثال ، قائمة العناصر) يجب عليك:

  1. إخراج البيانات إلى جدول بيانات باستخدام الأمر المزيد ⇒ إظهار القائمة ...;
  2. احفظ مستند جدول البيانات بالتنسيق المطلوب.

لفترة طويلة ، أصبح تطبيق 1C البرنامج الأكثر شعبية بين المحاسبين والمخططين والاقتصاديين والمديرين. لا يحتوي فقط على عدد متنوع من التكوينات لـ أنواع مختلفةالأنشطة ، ولكن أيضًا التعريب وفقًا للمعايير المحاسبية في العديد من دول العالم. المزيد والمزيد من الشركات تتحول إلى المحاسبة في هذا البرنامج. لكن إجراء نقل البيانات يدويًا من برامج المحاسبة الأخرى إلى 1C يعد مهمة طويلة ومملة إلى حد ما تستغرق الكثير من الوقت. إذا احتفظت الشركة بسجلات باستخدام Excel ، فيمكن أتمتة عملية النقل وتسريعها بشكل كبير.

مطلوب نقل البيانات من Excel إلى 1C ليس فقط في الفترة الأولية للعمل مع هذا البرنامج. في بعض الأحيان تكون هناك حاجة لذلك عندما تحتاج ، أثناء الأنشطة ، إلى إدخال بعض القوائم المخزنة في كتاب جداول البيانات. على سبيل المثال ، إذا كنت تريد نقل قوائم الأسعار أو الطلبات من متجر عبر الإنترنت. في حالة كانت القوائم صغيرة ، يمكن إدخالها يدويًا ، ولكن ماذا لو كانت تحتوي على مئات العناصر؟ من أجل تسريع الإجراء ، يمكنك اللجوء إلى بعض الميزات الإضافية.

ل التحميل التلقائيمناسب لجميع أنواع المستندات تقريبًا:

  • قائمة التسمية.
  • قائمة المقاولين
  • قائمة الأسعار
  • قائمة الطلبات
  • معلومات حول المشتريات أو المبيعات ، إلخ.

تجدر الإشارة على الفور إلى أن 1C لا يحتوي على أدوات مضمنة تسمح لك بنقل البيانات من Excel. لهذه الأغراض ، تحتاج إلى توصيل محمل خارجي ، وهو ملف بالتنسيق epf.

تحضير البيانات

سنحتاج إلى إعداد البيانات في جدول بيانات Excel نفسه.


بالإضافة إلى هذه الإجراءات العامة لإعداد البيانات في كتاب Excel ، ستحتاج أيضًا إلى جعل المستند يتماشى مع متطلبات المُحمل المحدد الذي سنستخدمه ، لكننا سنتحدث عن هذا بعد قليل.

توصيل محمل إقلاع خارجي

قم بتوصيل محمل الإقلاع الخارجي بالتمديد epfإلى تطبيق 1C ، سواء قبل تحضير ملف Excel أو بعده. الشيء الرئيسي هو أنه في بداية عملية التنزيل ، تم حل هاتين النقطتين التحضيريتين.

هناك العديد من أدوات تحميل جداول بيانات Excel الخارجية لـ 1C ، والتي تم إنشاؤها بواسطة مطورين مختلفين. سننظر في مثال باستخدام أداة معالجة المعلومات "تحميل البيانات من مستند جدول بيانات"للإصدار 1C 8.3.


إحدى قواعد البيانات الرئيسية التي تعمل بها 1C هي قائمة السلع والخدمات. لذلك ، لوصف إجراء التحميل من Excel ، سنركز على مثال نقل هذا النوع المعين من البيانات.

  1. نعود إلى نافذة المعالجة. نظرًا لأننا سنقوم بتحميل نطاق المنتج ، يجب أن يكون المفتاح في المعلمة في الموضع "الدليل". ومع ذلك ، يتم تعيينه بهذه الطريقة افتراضيًا. يجب عليك تبديله فقط عندما تنوي نقل نوع بيانات آخر: جزء جدوليأو سجل المعلومات. أبعد في الميدان "عرض الدليل"انقر فوق الزر مع علامة الحذف. يتم فتح قائمة منسدلة. في ذلك ، يجب أن نختار العنصر "التسمية".
  2. بعد ذلك ، يقوم المعالج تلقائيًا بترتيب الحقول التي يستخدمها البرنامج في هذا النوع من الدليل. وتجدر الإشارة على الفور إلى أنه ليس من الضروري ملء جميع الحقول.
  3. افتح الآن مستند Excel المحمول مرة أخرى. إذا كان اسم أعمدته يختلف عن أسماء حقول دليل 1C التي تحتوي على تلك المقابلة ، فأنت بحاجة إلى إعادة تسمية هذه الأعمدة في Excel بحيث تتطابق الأسماء تمامًا. إذا كان الجدول يحتوي على أعمدة لا يوجد لها نظائر في الدليل ، فيجب حذفها. في حالتنا ، هذه الأعمدة هي "كمية"و "سعر". يجب أيضًا إضافة أن ترتيب الأعمدة في المستند يجب أن يتطابق تمامًا مع الترتيب المقدم في المعالجة. إذا لم يكن لديك بيانات لبعض الأعمدة التي يتم عرضها في أداة التحميل ، فيمكن ترك هذه الأعمدة فارغة ، ولكن يجب أن يتطابق ترقيم تلك الأعمدة التي توجد بها بيانات. للراحة وسرعة التحرير ، يمكنك استخدام ميزة Excel الخاصة لنقل الأعمدة بسرعة في الأماكن.

    بعد تنفيذ هذه الإجراءات ، انقر فوق الرمز "يحفظ"، والتي يتم تمثيلها كرمز قرص مرن في الزاوية اليسرى العلوية من النافذة. ثم أغلق الملف بالنقر فوق زر الإغلاق القياسي.

  4. نعود إلى نافذة المعالجة 1C. انقر فوق الزر "يفتح"، والذي يظهر كمجلد أصفر.
  5. يتم تشغيل نافذة فتح الملف. نذهب إلى الدليل حيث يوجد مستند Excel الذي نحتاجه. تم تعيين مبدّل عرض الملف الافتراضي على التمديد mxl. لإظهار الملف الذي نحتاجه ، يجب إعادة ترتيبه إلى الموضع "ورقة اكسل". بعد ذلك ، حدد المستند المنقول وانقر فوق الزر "يفتح".
  6. ثم يتم فتح المحتوى في المعالج. للتحقق من صحة ملء البيانات ، انقر فوق الزر "التحكم في التعبئة".
  7. كما ترى ، تخبرنا أداة التحكم في التعبئة أنه لم يتم العثور على أخطاء.
  8. الآن دعنا ننتقل إلى علامة التبويب. "جلسة". في "مجال البحث"ضع علامة في السطر الذي سيكون فريدًا لجميع العناصر التي تم إدخالها في كتاب مرجع التسمية. في أغلب الأحيان ، يتم استخدام الحقول لهذا الغرض. "رمز البائع"أو "اسم". يجب القيام بذلك حتى لا تتكرر البيانات عند إضافة وظائف جديدة إلى القائمة.
  9. بعد إدخال جميع البيانات وإجراء الإعدادات ، يمكنك المتابعة إلى التحميل المباشر للمعلومات في الدليل. للقيام بذلك ، انقر فوق النقش "تحميل البيانات".
  10. عملية التنزيل جارية. بعد اكتماله ، يمكنك الذهاب إلى الكتاب المرجعي للتسمية والتأكد من إضافة جميع البيانات اللازمة هناك.

اتبعنا الإجراء الخاص بإضافة البيانات إلى الكتاب المرجعي للتسميات في برنامج 1C 8.3. بالنسبة للأدلة والمستندات الأخرى ، سيتم إجراء التنزيل وفقًا لنفس المبدأ ، ولكن مع بعض الفروق الدقيقة التي يمكن للمستخدم التعرف عليها بمفرده. وتجدر الإشارة أيضًا إلى أن الإجراء قد يختلف بالنسبة للعديد من برامج تحميل الجهات الخارجية ، لكن الطريقة العامة تظل كما هي بالنسبة للجميع: أولاً ، يقوم المعالج بتحميل المعلومات من الملف إلى النافذة حيث يتم تحريرها ، وعندها فقط يتم إضافتها مباشرة إلى قاعدة بيانات 1C.

في كثير من الأحيان ، عند التواصل مع العملاء المحتملين ، أسمع أنهم راضون تمامًا عن وظائف الجدول من جناح المكتب، ولا يرون النقطة في برامج 1C. كل ذلك لأن البعض ما زال مرتبطا هذا القرارفقط مع برامج المحاسب ، وهذا ليس صحيحًا.

يعد Excel منتجًا عالميًا وشاملًا ، ولا يمكنك المجادلة في ذلك. يمكن للجميع تقريبًا استخدام هذا البرنامج ، على عكس تطورات "1C" ، والتي تستهدف المتخصصين الضيقين. باستخدام الجداول "الخضراء" ، يمكنك بشكل تعسفي تنفيذ الوظائف الضرورية التي ستكون مريحة: هنا و النموذج الماليالمنظمات مع جميع التسويات المتبادلة ، والمحاسبة الإدارية ، وحتى المنظمة ، ومجموعة كبيرة من التصور للبيانات ، والقدرة على توسيع قدرات البرنامج شخصيًا باستخدام الوظائف الإضافية المختلفة - كل شيء في يديك ، كل شيء من البداية ...

إنه لأمر جيد إذا كنت قد بدأت للتو عملك التجاري ، مع الأخذ في الاعتبار تدريجيًا البيانات الضرورية الواردة في الجدول الخاص بالعلاقات مع العملاء والموردين والسلطات التنظيمية ، وبناء الهيكل التعسفي الخاص بك ، ولكن ما يجب فعله بعد ذلك عندما تصبح قاعدة البيانات ضخمة ، وسيقوم الموظفون بذلك العدد بالعشرات؟ كل نفس للنظر وفقا للمعايير الخاصة بهم؟ أنا أؤيد عدم الخلط بين الراحة والعادة ، والتي غالبًا ما تتعارض مع تنظيم الأعمال ، وبالتالي تحسينها.

من أجل الوضوح ، دعنا نتخيل ما قد تنشأ في أتمتة المحاسبة ، على سبيل المثال ، في التجارة:

1. تحليل المبيعات خلال فترة معينة.

يمكن لرئيس قسم المبيعات تحليل بيانات المبيعات. بعد كل شيء ، من المهم بالنسبة له أن يفهم ما إذا كانت الخطة قيد التنفيذ ، ومدى فعالية استراتيجياته ، من أجل إجراء تعديلات في الوقت المناسب في حالة عدم الكفاءة.

2. محاسبة المستودعات.
هل أحتاج إلى توضيح أنه من المهم أيضًا للمبيعات أن تفهم مدى توفر البضائع في المخزون ، وما هي البضائع التي يمكن حجزها وأيها غير متوفرة ، وما الذي يجب طلبه؟ أعتقد أن كل شيء واضح هنا.

3. الاحتفاظ بقاعدة بيانات الأطراف المقابلة.
حتى إذا كان المالك يبيع فقط ما يمكنك شراؤه هنا والآن ، وهو أمر نموذجي لقطاع B2C ، فإن لديه علاقات مختلفة قليلاً مع قاعدة الموردين - العقود ، الأولية ... تخيل مدى ملاءمة ذلك عندما يتعلق كل شيء بالمورد يتم عرضه تلقائيًا على الفور في قاعدة بيانات واحدة؟ يرى المدير المسؤول عن المستودع على الفور مدى توفر البضائع في المستودع ، ويقوم موظف آخر مسؤول عن المستندات بمراقبة المعلومات المتعلقة بتوافرها ، وما إذا كانت جميع الالتزامات بموجب العلاقات التعاقدية يتم الوفاء بها ، ومن يدين بمن ومقدارها. وفي حالة وجود تناقضات ، يمكنك التحقق من البيانات لفترة معينة ، والحصول على نتيجة في أقل من دقيقة.

4. ربح المنظمة.
لن يكون من الصعب إنشاء تقرير أرباح ، حيث أن جميع البيانات المتعلقة بالنفقات والدخل موجودة بالفعل في قاعدة البيانات. شريطة أن يتم إدخال المعلومات في الوقت المناسب على الأقل التاريخ المطلوب. العامل الأساسي هنا هو المسؤولية الشخصية للمستخدم.

إذا لم يكن لديك العديد من العملاء والموردين ، فسوف يناسبك برنامج Excel حقًا ، نظرًا لوجود متسع من الوقت لتصميم مخططاتك الخاصة في الجدول وتعبئتها ، مع التوزيع اللاحق للمستندات في مجلدات مختلفة على جهاز الكمبيوتر الخاص بك: العقود ، الموردين والعملاء والعملاء في الحي والعملاء قيد التطوير والعملاء المراد حذفهم - العملية التي لا نهاية لها والمثيرة لإنشاء مجلدات داخل مجلد. وإذا كان هناك الكثير من المعلومات ، فهل من الملائم الاحتفاظ بسجل لقاعدة البيانات الخاصة بك في هذه الحالة؟ بالطبع ، هناك دائمًا استثناءات ، وأحيانًا توجد مؤسسات ذات معدل دوران كبير ، ويتم الاحتفاظ ببياناتها المالية في Excel فقط. كم من الوقت يستغرق تبادل البيانات ودمجها بين الإدارات؟ الجواب: كثيرا.

ليس لدي أي فكرة عن كيفية العثور بسرعة على المستند الصحيح في عدد كبير من مستندات Excel التي يتم تنظيمها بواسطة نظام تعسفي. على سبيل المثال ، عند تقديم المستندات لمتطلبات الضرائب. كيف سيقدم المحاسب تقاريره للجهات الرقابية عندما تكون المعلومات كلها متناثرة؟ بالطبع ، يمكن الاستعانة بمصادر خارجية في المحاسبة ، وقد لا يهتم بعض أصحاب الأعمال ، للأسف ، بالعمليات التي قد يمتلكها متخصص معين ، طالما أنه يوازن. ولكن حتى لو كان الأمر كذلك ، فكيف يتم تنظيم عملية تبادل الوثائق؟ ما مدى سرعة فهم الموظف على الجانب لهيكل المعلومات المرتجل؟

لا يمكنني قول الشيء نفسه عن 1C ، لأن جميع المعلومات هناك منظمة ومترابطة:

    قاعدة بيانات واحدة لكل من الموظفين عن بعد والموظفين بدوام كامل ، حيث يمكنك العمل مع جميع المستندات القياسية والتعسفية ؛
    يعتمد تقديم التقارير إلى السلطات التنظيمية على البيانات التي تنعكس بالفعل في البرنامج ، فلا داعي لفتح العديد من الملفات ، وتقليل العديد من القيم في جدول واحد للحصول على النتائج النهائية.
"1C" ، بطريقة جيدة ، هو نظام متعدد المهام يهدف إلى كل من مهام المحاسبة النموذجية وأتمتة جميع العمليات التنظيمية ، اعتمادًا على مجال النشاط. الكلمة الأساسية هنا هي النظام. لا أحد يزعجك لتنظيم نظام عملك في Excel ، ولكن لماذا تعيد اختراع العجلة عندما تكون هناك حلول تغطي جميع الاحتياجات تقريبًا في تحسين الوقت والتكاليف المالية والمساعدة في تنظيم العمل؟

دفاعا عن التفوق

ربما بدا لك أنني ضد بناء البيانات في جداول "خضراء". مُطْلَقاً. في الواقع ، غالبًا ما أقوم ببعض الأشياء في Excel: إذا كنت بحاجة إلى حسابات عشوائية ، وإذا كنت بحاجة إلى تقسيم البيانات حسب العملاء ، وإجراء التحليلات وفقًا لتلك المعلمات غير الموجودة في 1C - نعم ، يحدث هذا - أذهب إلى "excel. ببساطة ، في الجداول أقوم بحسابات ، وتحليل غير قياسي ، ولكن بعد ذلك أقوم بتنظيم كل شيء لاحقًا على أي حال في 1C.

وبعد ذلك ، لعرض الملفات التي تم تحميلها من 1C ، ما زلت بحاجة إلى Excel ، حيث يتم تخزين البيانات الموجودة في 1C في جداول البيانات. هل تعتقد أنها حلقة مفرغة؟ سأصيغها بشكل مختلف: "1C" و "Excel" يسيران جنبًا إلى جنب مثل شريكين ، لكن لكل منهما غرضه الخاص ، فهما يكملان بعضهما البعض جيدًا ، لكن لا يتبادلان.

إذا كنت بحاجة إلى تنظيم شؤونك ، مع مراعاة النظام التشريعي لدولتنا ، مع مراعاة خصوصيات واتجاهات العمل ، خاصة عندما يتعلق الأمر بكميات كبيرة من المعلومات ، فأنت بحاجة إلى 1C. إذا كنت بحاجة إلى حسابات عشوائية ، وإنشاء إستراتيجية من البداية ، وتصور بيانات التحليلات غير القياسية ، فإن Excel في خدمتك. لكن من الأنسب العمل مع هذه الحلول في وقت واحد.


ما هي النتيجة - "1C" أو "Excel"؟

في البداية ، إذا كان السؤال على وجه التحديد في تمويل الأتمتة ، على الرغم من ذلك البرامج الأساسية"1C" ليست كذلك أموال طائلةسأستخدم Excel. ميزة كبيرة هي أن البيانات من الجداول "الخضراء" يمكن تحميلها في 1C دون خسارة. ولكن أثناء توسيع نطاقك ، أنصحك بالاهتمام ببرامج أتمتة عمليات الأعمال. يوجد الكثير منهم ، وقد لا يكون بالضرورة "1C" ...

يمكن إجراء الانتقال إلى 1C عندما تفهم أنه من الضروري تحسين مواردك ، بما في ذلك أتمتة المشكلات المتعلقة بالعلاقات مع العملاء والموردين والسلطات الإشرافية. بشكل عام ، لتحسين سير العمل الخاص بك من أجل زيادة كفاءة الأعمال ، عندما تستغرق معالجة المعلومات الكثير من الوقت ، ولن تتكيف ملفات Excel مع حجم البيانات المدخلة.

ومع ذلك ، ليس كل "1C" يمكن أن يناسبك ، يجب أن تأخذ في الاعتبار عوامل مختلفة: تفاصيل ونطاق العمل ، والحجم ، والحاجة إلى المهام اليومية ، والروتين الذي يجب تقليله. كل شيء فردي. الحقيقة ، كما قلت ، تقع في مكان ما بين "1C" و "Excel" - إنها إضافة إلى بعضها البعض.

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



تحميل...
قمة