إعـــــــلان

تقليص
لا يوجد إعلان حتى الآن.

كيف ادمج الاكسل مع الاوتو بلي

تقليص
هذا الموضوع مغلق.
X
X
 
  • تصفية - فلترة
  • الوقت
  • عرض
إلغاء تحديد الكل
مشاركات جديدة

  • كيف ادمج الاكسل مع الاوتو بلي

    السلام عليكم ورحمة الله وبركاته شباب كيفكم ... اريد ان ابحث في 3 ملفات أكسل فقلت اسوي برنامج بحث اكتب العبارة التي اريدها وهو يبحث في الملفات مباشرة ويعطينا الناتج وفي اي ملف اكسل وجدها يعني هل الاول او الثاني او الثالث
    رجاء افيدوني وجزاكم الله خير الجزاء

  • #2
    السلام عليكم ورحمة الله وبركاته
    ملف مفتوح للاخ هيثم قد يفيدك في بحثك
    http://www.mediafire.com/download/f93kl0099y7l8ss
    موفق بإذن الله ... لك مني أجمل تحية .

    تعليق


    • #3
      جزاك الله خير أخي ... كان قصدي ان البحث يتم عن ما بداخل الملف من نصوف سواء أكان الملف اكسل او وورد ... يعني ليس اسم الملف وانما ما بداخل الملف ويعطي لي الناتج ... يعني مثل برامج الفهارس المكتبية

      تعليق


      • #4
        السلام عليكم ورحمة الله وبركاته
        اخي (فاقد الشيء لا يعطيه )
        هذا كود بلغة php يستجيب تماما لطلبك اذ انه يفهرس محتويات الملف المعين اذا كانت لك القدرة التقنية على تحويله الى لغة lua فقد وجدت ضالتك ،عكس ذلك هذا ماجاد به الفقير الى العلم
        كود PHP:
        <?php 
        // ---------------------------------------------------------------------------------------------------------------------------------------------------------------- 
        // lecture des REPERTOIRES en PROFONDEUR (à partir de "$rep") et COMPTAGE du nombre de fichiers (avec fonction récursive) 
        // ---------------------------------------------------------------------------------------------------------------------------------------------------------------- 
        // http://www.ac-creteil.fr/util/progra...epertoires.php 
        /* script rep1.php 
        * affichage récursif du contenu d'un répertoire, avec parcours en "profondeur d'abord" 
        * pour cela dès que l'on a atteint et reconnu un sous-répertoire, on le parcours 
        * prioritairement en appelant récursivement la fonction de parcours pour ce répertoire. 
        */ 

        function parcours_rep($rep$ssrep$racine$i// fonction récursive ("racine" est là pour retrancher cette racine au chemin complet afin de remplir le tableau) 

        if (
        is_dir($rep)) // Ouvre le dossier "racine" ("/photos_web/galeries/" par exemple) et lit tous les répertoires 

        if( 
        $dir opendir($rep) ) // Ouvre le dossier "racine" et lit tous les répertoires 

        while( (
        $fichier readdir($dir)) !== false 

        if (
        $fichier != "." && $fichier != ".." 

        $chemin $rep.$fichier
        if (
        is_dir($chemin)) // Est-ce que $chemin est un répertoire ? 

        global 
        $liste_rep
        global 
        $i
        $liste_rep[$i] = substr($cheminstrlen($racine)); // PLace les fichiers dans un tableau ($liste_rep[] = à la fin) 
        echo 'i = '.$i.' - '
        echo 
        'liste_rep = '.$liste_rep[$i].'<br/>'
        // echo 'chemin = '.$chemin."<br>"; 
        $i++; 
        parcours_rep($chemin.'/', ($ssrep==''?$fichier:$ssrep.'/'.$fichier) , $racine $i); // fonction récursive 

        /* else // si on veut afficher les fichiers du répertoire (ou sous répertoire) 

        $liste_galeries[$i] = substr($chemin, strlen($racine)); // PLace les fichiers dans un tableau 
        echo 'galerie '.$i. ' = ' . $liste_galeries[$i].'<br/>'; 

        */ 



        // -------------------------------------- fin de la lecture des répertoires ------------------------------------------------------------------- 
        else 

        echo 
        "le répertoire \"$rep\" n'existe pas ..."

        closeDir($dir); 
        return 
        $liste_rep
        // ---------------------------------------------------------------- fin de la fonction ------------------------------------------------------------------- 

        $liste_repertoires = array(); 
        $liste_galeries = array(); 
        $i=0// $i = tous les répertoires 
        $nb_rep=0
        echo 
        "Affichage d'un rép. avec parcours en PROFONDEUR d'abord <br/>"
        //$repertoire= '../../photos_web/galeries/'; // "$repertoire" défini dans le programme d'appel 
        $liste_repertoires parcours_rep($racine''$racine$i=0); 
        $nb_galeries = (count($liste_galeries)); 
        $nb_rep = (count($liste_repertoires)); 
        echo 
        'nb_rep = '.$nb_rep.'<br/>'
        // Classement des répertoires ( "sort" = tri croissant "rsort" = tri décroissant) 
        sort($liste_galeries); // ou rsort($liste_galeries); 
        sort($liste_repertoires); // ou rsort($liste_repertoires); 
        for ($i=0$i<$nb_rep$i++) 

        if (
        $liste_repertoires[$i] != ''

        echo 
        'liste_rep '.$i.' = '.$liste_repertoires[$i].'<br/>'



        // ============================================================================================================================ 
        ?>
        والسلام عليكم ورحمة الله وبركاته

        تعليق


        • #5
          المشاركة الأصلية بواسطة فرح صالحي مشاهدة المشاركة
          هذا كود بلغة php يستجيب تماما لطلبك
          يعمل 100 %

          تعليق


          • #6
            المشاركة الأصلية بواسطة المـهاجر مشاهدة المشاركة
            يعمل 100 %
            السلام عليكم ورحمة الله وبركاته
            نورنا أخي اذا كان لا يعمل فبامكانك مساعدة الاخ صادق النية في مشكلته
            اذا كانت سخرية منك فالله يهديك
            موفق بإذن الله ... لك مني أجمل تحية .

            تعليق


            • #7
              المشاركة الأصلية بواسطة فرح صالحي مشاهدة المشاركة
              اذا كان لا يعمل
              ذكرت لك انه يعمل و ليس العكس
              المشاركة الأصلية بواسطة فرح صالحي مشاهدة المشاركة
              اذا كانت سخرية
              أعوذ بالله ان أكون من الجاهلين

              المشاركة الأصلية بواسطة فرح صالحي مشاهدة المشاركة
              اذا كانت لك القدرة التقنية على تحويله الى لغة lua فقد وجدت ضالتك ،
              أنا لا زلت عند رأيى
              يعمل 100 %
              زادك الله من العلم الوفير و بارك فيك

              هدانا الله و إياكم
              هذا و بالله التوفيق
              التعديل الأخير تم بواسطة المـهاجر; الساعة 12-03-2015, 12:30 PM.

              تعليق


              • #8
                المشاركة الأصلية بواسطة المـهاجر مشاهدة المشاركة
                ذكرت لك انه يعمل و ليس العكس

                أعوذ بالله ان أكون من الجاهلين



                أنا لا زلت عند رأيى
                يعمل 100 %
                زادك الله من العلم الوفير و بارك فيك

                هدانا الله و إياكم
                هذا و بالله التوفيق
                ==========================
                جازاك الله خيرا كثيرا ونفع بك
                ماكان لي ان اسيء الظن بالناس
                اعتذر منك اخي وساتفكرك بالدعاء في الجمعة بعد قليل
                موفق بإذن الله ... لك مني أجمل تحية .

                تعليق


                • #9
                  بارك الله فيكم شكرا أخي صالحي على ثقافة الاعتذار

                  تعليق


                  • #10
                    السلام عليكم ورحمة الله وبركاته
                    بخصوص طلب الاخ المتعلق بالبحث في ملفات الايكسل
                    كما ذكر لك أن العملية ليست سلسة
                    على كل سأضع تصورا نظريا قد يبادر زميل بتجسيده
                    --------
                    01 - عند دخول التجميعية تحول ملفات الايكسل الثلاث الموجودة في مجلد
                    البرنامج الى ملفات xml بعيدا عن مسار التجميعية
                    02 - عند كتابة المفردة المعنية بالبحث و ستكون اما Number أو String
                    يتم انشاء أمر دفعي باستغلال التعليمة os ليتم البحث في ملفات xml
                    هذا الامر سينتج ملفات نصية بنفس تسمية ملفات xml في كل ملف عدة أسطر
                    ما يهمنا في الملف النصي الواحد هو وجود احدى المفردتين Number أو String
                    لانه تواجد احداهما دال على أن مفردة البحث موجودة في الملف النصي المتوافقة تسميته مع تسمية ملف xml و
                    المتوافقة مع ملف الايكسل
                    و عند خروج التجميعية يتم حذف كل المجلد الذي تمت فيه العمليات
                    ---------------
                    أعرف أن هذا الكلام غير مجد ... فقط واحد يبدأ و نتعاون
                    أشعر أنها ستكون هناك نتائج لابأس بها والله اعلم

                    تعليق


                    • #11
                      لا توجد اى طريقة عملية متوفرة فى الوقت الراهن لكن يمكن محاولة

                      التحويل ل csv
                      عمل load لل csv فى grid (امر جاهز)
                      البحث فى الجريد (برمجة حلقة)

                      لدى بليجن من برمجتى يتعامل مباشرة مع ملف ال xls أو xlsx على مسنوى الهكس مباشرة
                      و يفهرس الملف إلى جدول لوا متعدد المستوى بعد تحليل دقيق للهيدر
                      و يكفل القراءة من خلية محددة او الملف كله و طرحه فى جريد او انبوت
                      يبحث بداخل ملفات الأكسل عن اى قيم و يرجع النتائج كمتغيرات لوا عادية
                      كما يضمن كتابة الملفات مباشرة من متغيرات لوا الى خلايا الملف
                      لا يرتبط بوجود برنامج الأكسل على الجهاز
                      لكنه للأسف غير مجانى

                      و لمنع التعارض مع الإدارة أفضل عدم طرحه
                      موفقين

                      تعليق


                      • #12
                        بالتأكيد هذا عمل و جهد كبير .. يستحق التشجيع
                        ثم لماذا الادارة تعارض ابداعات اعضائها حتى و ان كانت بالمقابل ذاك حقك
                        -- عني سأتصل بك في الايام القادمة لشراء نسخة من البليجين أحتاجه كثيرا
                        موفق

                        تعليق


                        • #13
                          اخى الكريم
                          لا مانع عندى

                          البليجن يفيد فى التعامل مع عدد كبير من الملفات فى آن واحد و بسرعة فائقة (بالمللى ثانية)
                          لو كنت تريد التعامل مع عدد صغير من الملفات و لا يفرق معك إضاعة ثانية أو ثانية و نصف فى الإجراء
                          فأنصحك بتوفير النقود و توجه فورا للإضافة luacom فهى مجانية و تستطيع من خلالها فعل كل ما تشاء
                          فقط يعيبها
                          1- أنها تستغرق وقتا طويل نسبيا
                          2- تستلزم وجود الأكسيل مثبتا على جهاز المستخدم
                          3- يكتنفها بعض الصعوبة (فى بداية التعامل مع luacom فقط )

                          لو تغاضينا عن الثلاثة عيوب
                          يمكن التعامل بدون البليجن

                          تعليق


                          • #14
                            فعلا أخي الان اعمل على luacom لتحويل كما ذكرت ملفات الايكسل2003
                            الى ملفات XML
                            على أن يكون الكود للمرحلة التي ذكرت هو بعد تفعيل الاضافة
                            كود PHP:
                            result File.Find(_SourceFolder.."\\AutoPlay\\Docs""*.xls"falsefalsenilnil);
                            for 
                            v,n in pairs(result) do
                            oExcelApp=luacom.CreateObject("Excel.Application")
                            oXLS=luacom.CreateObject("Excel.Document")
                            oXLS=oExcelApp.Workbooks:Open(n)
                            oXLS.Application.DisplayAlerts False
                            XMLSavePath 
                            String.Replace(n".xls"".xml"false);
                            oXLS:SaveAs(XMLSavePath46)
                            oExcelApp:Quit()
                            end 

                            تعليق


                            • #15
                              لماذا xml ؟؟

                              لا تعقد الأمور على نفسك
                              هذا هو الكود بعد التعديل لينتج csv و هو ملف نص بسيط يسهل التعامل معه

                              كود PHP:
                              result File.Find(_SourceFolder.."\\AutoPlay\\Docs""*.xls"falsefalsenilnil);
                              for 
                              v,n in pairs(result) do
                              oExcelApp=luacom.CreateObject("Excel.Application")
                              oXLS=luacom.CreateObject("Excel.Document")
                              oXLS=oExcelApp.Workbooks:Open(n)
                              oXLS.Application.DisplayAlerts False
                              XMLSavePath 
                              String.Replace(n".xls"".csv"false);
                              oXLS:SaveAs(XMLSavePath6)
                              oExcelApp:Quit()
                              end 
                              بعدها تستخدم لكل ملف csv دالة قراءة النصوص إلى تيبل Text.ReadtoTable
                              و لكل سطر من التيبل تستخدم دالة delemited string to table أو string.gmatch
                              ال delemiter يكون إما فاصلة أو فاصلة منقوطة (يمكنك كشفها بنفسك بل حتى يمكنك جعل البرنامج يكشفها بسهولة )
                              لتحصل على ما تريد بكل سهولة
                              التعديل الأخير تم بواسطة المـهاجر; الساعة 13-03-2015, 05:55 PM.

                              تعليق

                              مواضيع تهمك

                              تقليص

                              المنتدى: القسم العام نشرت بواسطة: Reem2Rabeh الوقت: 04-23-2025 الساعة 04:27 PM
                              المنتدى: ضبط وتوكيد الجودة نشرت بواسطة: HeaD Master الوقت: 04-15-2025 الساعة 09:30 AM
                              المنتدى: التصنيع والانتاج نشرت بواسطة: HeaD Master الوقت: 04-11-2025 الساعة 01:08 PM
                              المنتدى: القسم العام نشرت بواسطة: نوال الخطيب الوقت: 03-19-2025 الساعة 03:07 AM
                              المنتدى: الكمبيوتر والإنترنت نشرت بواسطة: عوض السوداني الوقت: 03-18-2025 الساعة 07:22 AM
                              يعمل...
                              X