-
Posts
28 -
تاريخ الانضمام
-
تاريخ اخر زياره
نوع المحتوي
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
مشاركات المكتوبه بواسطه Mazen.Excel
-
-
اخي خالد، حاول ابني ملف اكسل جديد ، بحيث انه اذا كان عمود يحتوي على نص مثلا ، يكون كل العمود بتنسيق نص، وكذلك اذا كان العمود يحتوي على ارقام، فيجب ان يكون كل العمود بتنسيق رقم وممنوع ان يحتوي على نص.
-
windows authentication
ذلك بعني انه ما في كلمة مرور ولا اسم مستخدم
جرب الملف التالي
-
البيانات على
sql
عليها كلمة مرور
- 1
-
يعني لما تدخل على
sql
بعطي خطا
او قصدك لما يحاول البرنامج يرحل بعطي خطا؟
- 1
-
- 1
-
اوك.. سيتم عمل المطلوب
ساستعمل نفس الكود السابق
ولكن مع استخدام
loop
لكي يتم استبدال كل البيانات بالجدول
والطريقة مجربة طبعا
ولكن من الأفضل عمل تست للكود على جدول تست
- 1
-
أستاذ ياسر والأستاذ أبو البراء والأستاذ الصقر
اذا بالإمكان تنزيل
SQL
وهو برنامج مجاني من مايكروسوفت
وانشاء الله ستاتي الدروس لاحقا
------
انا اكثر اشي فادني بهاي المواضيع، انه بشغلي برنامج محاسبة ضخم أساسه
sql
وانا مش كثير راضي عن التقارير اللي بعطيني إياها البرنامج المحاسبي
اضطريت اشبك البرنامج المحاسبي مع الاكسل عن طريق ربط الاكسل بجداول اس كيو ال
وحاليا بكسبة زر ببني كل التقارير اللي بدي إياها مع رسوم بيانية بدون ادخال أي قيمة يدوية
-------
ومع التجرية اقدرت ابني برامج بواجهة اكسل وبدون أي وجود للبيانات فيها، فقط برامج للتقارير
وأيضا برامج اكسل تكون فقط بها شاشات ادخال وتخزن البيانات بقواعد بيانات اس كيو ال
--------
- 2
-
مرحبا اخي الكريم
من خلال الاكسل يمكنك ان تضيف او تعدل او تحذف بيانات من
SQL Server
أولا : كود استعلام البيانات
Private Sub GetSQLData() On Error GoTo err Dim cn As New ADODB.Connection Dim rs As New ADODB.Recordset Dim sql_string As String Dim strconn As String DataBaseName = "------" ServerName = "------" UserId = "------" Password = "------" strconn = "Provider=SQLOLEDB.1;Password=" & Password & ";User ID=" & UserId & ";Initial Catalog=" & DataBaseName & ";Data Source=" & ServerName sql_string = "SELECT * from transactions WHERE CustomerID= '2648' " cn.Open strconn rs.Open sql_string, cn Range("a3").CopyFromRecordset rs rs.Close Set rs = Nothing cn.Close Exit Sub err: MsgBox err.Description End Sub
ثانيا: كود الاضافة
Private Sub InsertSQLData() On Error GoTo err Dim cn As New ADODB.Connection Dim rs As New ADODB.Recordset Dim sql_string As String Dim strconn As String DataBaseName = "-----" ServerName = "-----" UserId = "----" Password = "----" strconn = "Provider=SQLOLEDB.1;Password=" & Password & ";User ID=" & UserId & ";Initial Catalog=" & DataBaseName & ";Data Source=" & ServerName sql_string = "Insert Into transactions (CustomerID, Amount) values ( '1',1000) " cn.Open strconn rs.Open sql_string, cn Set rs = Nothing cn.Close Exit Sub err: MsgBox err.Description End Sub
ثالثا: كود التعديل
Private Sub UpdateSQLData() On Error GoTo err Dim cn As New ADODB.Connection Dim rs As New ADODB.Recordset Dim sql_string As String Dim strconn As String DataBaseName = "----" ServerName = "----" UserId = "----" Password = "----" strconn = "Provider=SQLOLEDB.1;Password=" & Password & ";User ID=" & UserId & ";Initial Catalog=" & DataBaseName & ";Data Source=" & ServerName sql_string = "update transactions set CustomerID='2' where amount =1000 " cn.Open strconn rs.Open sql_string, cn Set rs = Nothing cn.Close Exit Sub err: MsgBox err.Description End Sub
طبعا بدل القيم الافتراضية التي انا ادخلتها يمكنك الاعتماد على قيم موجودة في خلايا اكسل او تكس بوكس في نماذج
مثلا بدل كتابة sql_string = "update transactions set CustomerID='2' where amount =1000 "
يمكنك كتابة sql_string = "update transactions set CustomerID= "& "'" & range("a2") & "'" & " where amount =" & range("b2")
لاحظ إضافة
'
امام وخلف أي قيمة لا تكون مبنية في اس كيو ال انها قيمة
int
وشكرا
- 1
-
انشاء الله سيتم عمل دروس لربط الاكسل ب
sql
والموضوع اكثير مهم، وذلك بسبب وجود الكثير من البرامج المالية والإدارية تعتمد على
sql
واذا كان يتوفر للشخص صلاحية بالدخول الى قاعدة بيانات البرنامج ، فانه يمكن تصميم التقارير التي تخصه على الاكسل
ونحن نعرف هنا كم ممكن ان نستفيد من الاكسل للتقارير وللتحليل المالي
وشكرا
-
مرحبا
الكود التالي لاستعلام البياتات من برنامج اس كيو ال
Private Sub GetSQLData() On Error GoTo err Dim cn As New ADODB.Connection Dim rs As New ADODB.Recordset Dim sql_string As String Dim strconn As String DataBaseName = "------" ServerName = "------" UserId = "------" Password = "------" strconn = "Provider=SQLOLEDB.1;Password=" & Password & ";User ID=" & UserId & ";Initial Catalog=" & DataBaseName & ";Data Source=" & ServerName sql_string = "SELECT * from transactions WHERE CustomerID= '2648' " cn.Open strconn rs.Open sql_string, cn Range("a3").CopyFromRecordset rs rs.Close Set rs = Nothing cn.Close Exit Sub err: MsgBox err.Description End Sub
مع العلم انه يجب تفعيل التالي من
Tools - References
-
أفكار جدا رائعة
شكرا جدا
-
لو تعمل repair
ممكن يزبط
بس لازم يكون عندك
office setup
- 1
-
مرفق ملف للتوضيح
Dملف باسم داتا يوضع مثلا على قرص كمبيوتر
والملف الثاني لا يشترط وضعه في مكان
وبالامكان تغير مساق الداتا
كما يمكن تغير قيم الادخال وإدخال من خلايا الاكسل او من مربع نص بالفورم
- 3
-
انا اشتغلت على موضوع الشير لملف الاكسل
بس كثير به مشاكل، اكثير موظفين بواجهوا صعوبة في الحفظ وملف حجمه كبير صعب بالفتح والخروج
وكمان عندي الموظفين بدخلوا بيانات على نفس قاعدة البيانات ولما يعملوا حفظ بتبلش المشاكل
بالطريقة الا انا ذكرتها، الموظفين ما بشوفوا قاعدة البيانات اصلا، هم بعبو ب فورم ادخال ، وهذا الفورم بفتح اتصال مع قاعدة البيانات وبس ينتهي ترحيل بغلق الاتصال
والحلو انه كل موظف عنده ملف اكسل به فورم ادخال والكل بقرا وبدخل على نفس قاعدة البيانات بدون مشاكل
انا راح اعمل مثال عليه وارفقه انشاء الله
- 1
-
هاي الفكرة مش متداولة بالمنتيدات واكثير مهمة
انا اكثير اتعبت لحد ما اقدرت اشتغل عليها
حاليا عندي برنامج (شاشة الادخال بملف اكسل) وموزع على خمس موظفين ، كل موظف اله ملف، والبينات مخزنة بملفات ثانية موجودة على جهاز سيرفر
انا برنامجي اسمه
lite
وبدير 9 قواعد بيانات
وبيقدر يشتغل عليها عدد لا نهائي من الموظفين
- 1
-
ملفات جدا رائعة
شكرا للجميع على المشاركة
-
شكرا أستاذ ياسر
طريقتك جدا جميلة
انا استعملت طريقتي على اكثر من جهاز ولم احتاج الى ملف
dll
يبدو انه متوفر بكل بمعظم نسخ الاوفس
وانا استعمله تقريبا بكل يوزر فورم اعمله
فلا احتاج الا الى سطر واحد لاظهاره
وسطر اكتب به القيمة التي اريدها ان تكون عند اجراء الحدث
- 1
-
ProgressBar اضافة
من المهم جدا إضافة هذه الأداة لمشروعك البرمجي
تساعد المستخدم بتقدير الزمن المطلوب لتنفيذ المهمة
بالملف المرفق مثال
- 1
-
ADO Connectionاستخدام الاكسيل كقاعدة بيانات عن طريق وسيلة الاتصال
اعتقد ان هذا الموضوع سيعطيكم معلومة جديدة في كيفية التعامل مع الاكسل كقاعدة بيانات
في البداية الطريقة تعتمد على وسيلة الاتصال
Active Data Object ADO
وهي وسيلة اتصال بين برنامج كتابة الاكواد و قاعدة البيانات مثلا
VB.net and SQL
Visual Basic and Access
وهي حصرية لبرامج مايكروسوفت فقط
ولكي يكون لدينا اتصال كامل يجب ان يكون لدينا
Connection String
وهو عنوان قاعدة البيانات التي سيتم الاتصال بها، والذي من خلاله سيكون التالي:
* فتح اتصال*
* جملة الاستعلام*
* انهاء الاتصال*
وهنا تكمن الميزة بهذه الطريقة، فجملة الاستعلام يجب كتابتها بطريقة
SQL dataBase
وهنا تنطبق معظم جمل
SQL
امثلة على الجمل
select * from [data]
Select Count(Customer) from [data]
Select Sum(Customers) from [data] where city ='Ramallah'
تعلم كتابة جمل جديدة
وغيرها من الجمل التي يعرفها جيدا المبرمجون باستخدام قواعد البيانات
SQL,MYSQL,Oracle
اكبر فائدة لهذه الطريقة انه يمكن من خلالها تصميم واجهة برنامج على الاكسل او تصميم فورم على الاكسل وحفظ البيانات على ملف اكسل اخر بدون الحاجة الى فتحه
ولاستخدام هذه الطريقة يجب تفعيل التالي
Tools-References
بالمرفق ملف اكسل يحتوي مثال على ما تم ذكره سابقا
- 6
-
انا مسجل من فترة طويلة
واكثييييييييييييييييييييييير استفدت من المنتدى
وانشاء الله راح افيد بعد ما صار عندي خبرة متواضعة
واحلى من هيك منتدى واحلى من هيك أعضاء ما في
- 3
-
- 4
- 1
-
جزاك الله خيراا
يعطيك الف عافية بس ممكن سؤال
كيف عملت زر اضافة صورة لاني من زمان بحاول اضيف صور الى برامجي ولكن للاسف
-
Application.ScreenUpdating = True
متاسف كثير على الغلبة بس هذي الجملة كثير انا بشوفها في مشاركات الاخوة الاعضاء
ممكن حد من الاخوة يوضح لنا متى نستخدم هذه الجملة.
-
مشاركة ملف الإكسيل لأكثر من مستخدم والتعديل عليه في نفس الوقت
في منتدى الاكسيل Excel
قام بنشر
مرحبا اخوتي
بالامكان استخدام طريقة الاتصال ADO بين ملفات الاكسل
وبتلك الطريقة نحتاج لملف اكسل واحد فقط يحتوي على البيانات ، ويمكن استخدام عدد كبير من الملفات الاخرى لادخال البيانات والاستعلام من ملف الاكسل الذي يحتوي على البيانات
لي مشاركة يمكن الاطلاع عليها
انا لي تجربة عملية على هذا الموضوع، ويمكن وضع ملف اكسل البيانات على سيرفر ، وفتح ملف الادخال من اي جهاز اخر. حتى لو للقراءة فقط ، فانه بالنهاية فقط للادخال والاستعلام.