۩◊۩ أبو حنين ۩◊۩ قام بنشر يونيو 6, 2015 قام بنشر يونيو 6, 2015 السلام عليكم. الاخوة الكرام والاساتذه العظام ارجو المساعده فى تصحيح كود حدث الورقه فى شيت Medi. Kha المفترض بعد الترحيل الى هذا الشيت يتم ترك سطر فارغ اسفل اخر بيانات تم ترحيها من شيت ( 1 ) الا انه يتم اخفاء السطور بعد الصف رقم 21 مع العلم ان عند اظهار الاسطر المخفيه تظهر جميع البيانا المرحله ..... ويعود اخفاء الاسطر مره اخرى بعد الترحيل حتى الصف رقم 21 طلب أخر هل يمكن عمل تصفيه فى شيت Medi. Kha عند كتابه الرقم فى D2 يتم تصفيه جميع البيانات الا هذا الرقم (Private Sub Worksheet_Change(ByVal Target As Range Dim MyRng As Range Dim Col As Range If Not Intersect(Target, Range("G1:G3")) Is Nothing Then Call SortData End If If Intersect(Target, Range("G4:G10000")) Is Nothing Then Exit Sub Application.EnableEvents = False Application.Calculation = xlManual Application.ScreenUpdating = False With Target Range("G4:G10000").EntireRow.Hidden = False For Each Col In Range("G4:G10000") If CStr(Col) = "" Or Col.Value = 0 Then If MyRng Is Nothing Then Set MyRng = Col Else Set MyRng = Union(MyRng, Col) End If Next If Not MyRng.Offset(1, 0) Is Nothing Then MyRng.Offset(1, 0).EntireRow.Hidden = True End With Application.Calculation = xlAutomatic Application.ScreenUpdating = True Application.EnableEvents = True End Sub Book6.rar
۩◊۩ أبو حنين ۩◊۩ قام بنشر يونيو 6, 2015 الكاتب قام بنشر يونيو 6, 2015 السلام عليكم الاخوة الكرام تم تصحيح الكود وذلك بعد مراجعه مشاركة خاصة بالاخ الحبيب ياسر خليل وهو خطاءمن المستخدم عدم ادخال بيانات فى الخليه G ويبقى الطلب الاخير هل يمكن عمل تصفيه فى شيت Medi. Kha عند كتابه الرقم فى D2 يتم تصفيه جميع البيانات الا بيانات هذا الرقم
۩◊۩ أبو حنين ۩◊۩ قام بنشر يونيو 6, 2015 الكاتب قام بنشر يونيو 6, 2015 الساده الكرام هل يمكن عمل تصفيه فى شيت Medi. Kha عند كتابه الرقم فى D2 يتم تصفيه جميع البيانات الا بيانات هذا الرقم
ياسر خليل أبو البراء قام بنشر يونيو 6, 2015 قام بنشر يونيو 6, 2015 أخي الكريم أبو حنين أعتقد أنه يجب التخلي قليلاً عن حدث ورقة العمل .. لاحظت أنك تركز على ذلك . ما بال عمل الأكواد وربطها بزر ؟ في وجهة نظري أفضل حتى لا يرتبط تنفيذ الكود بتغيير ما في خلية أو في خلايا .. يعني ببساطة أنا أنفذ الكود لما أحب ...ودا هيجنبك الكثير من المشكلات إليك الكود التالي .. كود يوضع في موديول Sub FilterData() Dim WS As Worksheet Dim myDate As Date Set WS = Sheets("Medi. Kha") If IsDate(Range("D2")) Then myDate = Range("D2") myDate = DateSerial(Year(myDate), Month(myDate), Day(myDate)) End If With WS .AutoFilterMode = False .Range("A4:G4").AutoFilter Field:=5, Criteria1:="<=" & myDate, Operator:=xlOr, Criteria2:=">" & myDate + 1 End With End Sub وليس في حدث ورقة العمل أما إذا أردته تلقائي وهذا أتوقعه فأعتقد أنك قد عرفت الطريق 1
۩◊۩ أبو حنين ۩◊۩ قام بنشر يونيو 6, 2015 الكاتب قام بنشر يونيو 6, 2015 السلام عليكم اخى الكريم ياسر وجه نظر لم الاحظ مدى قيمتها الا من كلامك .... ((أنا أنفذ الكود لما أحب ...ودا هيجنبك الكثير من المشكلات))...معك كل الحق جزاك الله خيرا ونرجع مرجعنا للكود ..اخى الحبيب اتوقع منك سعت صدرك .... تقبل وجميع الاعضاء الكرام عزرى لقد اخطاءت اثناء شرح طلبى لكون البيت به ثانويه عامه وانت اعلم بمدى التوتر ولهذااكرر اعتزارى عن وقتك ومجهودك معى المطلوب الصحيح عمل تصفيه فى شيت Medi. Kha وكذلك شيت Medi. Eps عند كتابه الرقم فى الخليه( D3 وليس D2 )واقصد به رقم العمل يتم تصفيه جميع البيانات الا بيانات هذا الرقم ورقم العامل موجود فى العمود C
ياسر خليل أبو البراء قام بنشر يونيو 6, 2015 قام بنشر يونيو 6, 2015 جرب الكود بهذا الشكل Sub FilterData() Dim WS As Worksheet Dim myCrit Set WS = Sheets("Medi. Kha") myCrit = Range("D3") With WS .AutoFilterMode = False .Range("A4:G4").AutoFilter Field:=3, Criteria1:="<>" & myCrit End With End Sub تقبل تحياتي
۩◊۩ أبو حنين ۩◊۩ قام بنشر يونيو 6, 2015 الكاتب قام بنشر يونيو 6, 2015 (معدل) السلام عليكم اخى الكريم ياسر الكود يعمل على عكس المطلوب عند كتابه الرقم وتنفيذ الكود .... تظهر بيانات جمبع الارقام الا بيانات هذتا الرقم ولاحظت ان الكود به ( Set WS = Sheets("Medi. Kha") ) واريد ان يعمل ايضا على شيت ( Medi. Eps ) تقبل منى كل التقدير والاحترام تم تعديل يونيو 6, 2015 بواسطه ۩◊۩ أبو حنين ۩◊۩
ياسر خليل أبو البراء قام بنشر يونيو 6, 2015 قام بنشر يونيو 6, 2015 أخي الكريم أبو حنين الرجاء التوضيح بشكل يزول معه أي لبس هل تريد تصفية البيانات في ورقتي العمل اللتين ذكرتهما ..بنفس الشرط ألا وهو الخلية D3 في ورقة العمل المسماة Medi. Kha ؟؟ أم أن كل خلية في كل ورقة عمل منفصلة عن الأخرى .. أقصد العمل سيكون على الخلية D3 في ورقة العمل Medi. Kha والخلية D3 في ورقة العمل Medi. Epe؟ بالمناسبة بالنسبة لملاحظتك أعتقد أنها لا تستحق ..كان من الواجب أن تقوم بالإطلاع على الكود أولاً ومعرفة لما تم تصفية البيانات بهذا الشكل ..لقد أسأت الفهم وفهمت العكس .. ولحل المشكلة بكل يسر قم بإزالة هذا الجزء من الشرط "<>" & من السطر .Range("A4:G4").AutoFilter Field:=3, Criteria1:="<>" & myCrit يرجى توضيح المطلوب من جديد بارك الله فيك وقم بإرفاق الملف مرة أخرى بعد وضع بعض البيانات في ورقة العمل المسماة Medi. Epe حتى يتسنى لنا تجربة الكود قبل رفعه
۩◊۩ أبو حنين ۩◊۩ قام بنشر يونيو 6, 2015 الكاتب قام بنشر يونيو 6, 2015 السلام عليكم اخى الكريم ياسر اعلم انى اثقلت عليك من كثره المطلوب وعدم توصيل المطلوب بصوره صحيحه جزاك الله خير على صبرك معى اخى الحبيب ياسر اريد ان يتم تنفيز الكود على شيت Medi. Kha وكذلك شيت Medi. Eps ويكون العمل على نفس الخليه D3 لقد قمت بالتغير الذى ذكرته والكود يعمل بصوره ممتازه ويبقى جعل الكود يعمل على شيت Medi. Kha وكذلك شيت Medi. Eps Book6.rar
ياسر خليل أبو البراء قام بنشر يونيو 6, 2015 قام بنشر يونيو 6, 2015 سأسأل للمرة الأخيرة ..الخلية المقصودة D3 في أي ورقة منهما ؟ أم أن كل خلية D3 في كل ورقة منفصلة عن الأخرى ؟؟ .. يعني الشرط خلية واحدة فقط في كلا الورقتين أم لا ...؟ اعذرني لابد من التوضيح التاااااااااااااام الذي لا يشوبه لبس
۩◊۩ أبو حنين ۩◊۩ قام بنشر يونيو 6, 2015 الكاتب قام بنشر يونيو 6, 2015 (معدل) اخى ياسر واضح انى اثقلت جدا عليك اريد اذا اردت تنفيذ الكود وانا فى شيت Medi. Kha استطيع ذلك واذا كنت فى شيت Medi. Eps واردت تنفيذ الكود استطيع ذلك لان الكود واقف تنفيذ على شيت Medi. Kha ("Set WS = Sheets("Medi. Kha اخى ياسر خلية D3 في كل ورقة منفصلة عن الأخرى اى الخليه D3 فى شيت Medi. Kha تخص ذلك الشيت فقط و الخليه D3 فى شيت Medi. Eps تخص ذلك الشيت فقط لقد كررت الكود بما يتناسب وشيت Medi. Eps ده حل مؤقت حتى تدلنى على الصح Sub FilterData1() Dim WS As Worksheet Dim myCrit Set WS = Sheets("Medi. Epe") myCrit = Range("D3") With WS .AutoFilterMode = False .Range("A4:G4").AutoFilter Field:=3, Criteria1:="" & myCrit End With End Sub تم تعديل يونيو 6, 2015 بواسطه ۩◊۩ أبو حنين ۩◊۩
أفضل إجابة ياسر خليل أبو البراء قام بنشر يونيو 6, 2015 أفضل إجابة قام بنشر يونيو 6, 2015 أخي الحبيب أبو حنين لم تثقل علي ..كل الفكرة أنني دائماً وأبداً أحب التوضيح التام للأمر ..لأن عدم التوضيح يؤدي إلى تضييع الوقت في مشاركات لا طائلة منها (هذا أسلوبي لو إنت متابع لمشاركاتي بالمنتدى) إليك الكود التالي يصلح لورقة العمل النشطة أي ورقة عمل سواء هذه الورقة أم تلك Sub FilterData() Dim WS As Worksheet Dim myCrit Set WS = ActiveSheet myCrit = WS.Range("D3") Application.ScreenUpdating = False With WS If Not IsEmpty(myCrit) Then .AutoFilterMode = False .Range("A4:G4").AutoFilter Field:=3, Criteria1:=myCrit Else .Cells.AutoFilter End If End With Application.ScreenUpdating = True End Sub تقبل تحياتي
۩◊۩ أبو حنين ۩◊۩ قام بنشر يونيو 6, 2015 الكاتب قام بنشر يونيو 6, 2015 اخى ياسر لك منى كل الشكر والتقدير اشهد الله انى احبك فى الله جزاك الله كل الخير على مجهودك ووقتك 1
ياسر خليل أبو البراء قام بنشر يونيو 6, 2015 قام بنشر يونيو 6, 2015 أخي الحبيب أبو حنين أحبك الله الذي أحببتني فيه .. :fff: أرجو ألا تكون منزعج من كثرة إلحاحي بالتوضيح ... والحمد لله أن تم المطلوب على خير تقبل تحياتي
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.