اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

كود استدعاء بيانات على حسب التاريخ واسم العميل


إذهب إلى أفضل إجابة Solved by ابراهيم الحداد,

الردود الموصى بها

السلام عليكم ورحمة الله وبركاته ,,,,,

مطلوب كود يقوم باستدعاء بيانات على حسب التاريخ المكتوب في شيت "فاتورة تاريخ" في الخلية c2 و c3 وعلى حسب اسم العميل المكتوب في الخلية C1 وان لا يقوم بالبحث في هذه الشيتات ( بيانات المخزن - المدخلات - المرتجع - sheet1 ) 

فقط يقوم باستدعاء البيانات من اسم الشيت المكتوب في الخليه C1 على حسب الفترة المكتوبة في C2 و C3 في شيت "فاتورة تاريخ"

الملف المرفق موضح المطلوب 

استدعاء بيانات بالتاريخ.xlsm

رابط هذا التعليق
شارك

  • أفضل إجابة

السلام عليكم و رحمة الله

استخدم الكود التالى

Sub GetInv()
Dim ws As Worksheet, Sh As Worksheet
Dim LR As Long, CuName As String
Dim Date1 As Date, Date2 As Date
Dim i As Long, p As Long
Set ws = Sheets("فاتورة تاريخ")
CuName = ws.Range("C1").Text
If CuName = Empty Then Exit Sub
Set Sh = Sheets(CuName)
Date1 = ws.Range("C2")
Date2 = ws.Range("C3")
ws.Range("A10").CurrentRegion.Offset(1, 0).ClearContents
LR = Sh.Range("M" & Rows.Count).End(3).Row
p = 9
i = 10
Do While i <= LR
If Sh.Cells(i, 13) >= Date1 And Sh.Cells(i, 13) <= Date2 Then
p = p + 1
Sh.Cells(i, 1).Resize(, 13).Copy
ws.Range("A" & p).PasteSpecial xlPasteValues
ws.Range("A" & p) = p - 9
End If
i = i + 1
Loop
Application.CutCopyMode = False
End Sub

 

  • Like 3
رابط هذا التعليق
شارك

6 دقائق مضت, ابراهيم الحداد said:

السلام عليكم و رحمة الله

استخدم الكود التالى

Sub GetInv()
Dim ws As Worksheet, Sh As Worksheet
Dim LR As Long, CuName As String
Dim Date1 As Date, Date2 As Date
Dim i As Long, p As Long
Set ws = Sheets("فاتورة تاريخ")
CuName = ws.Range("C1").Text
If CuName = Empty Then Exit Sub
Set Sh = Sheets(CuName)
Date1 = ws.Range("C2")
Date2 = ws.Range("C3")
ws.Range("A10").CurrentRegion.Offset(1, 0).ClearContents
LR = Sh.Range("M" & Rows.Count).End(3).Row
p = 9
i = 10
Do While i <= LR
If Sh.Cells(i, 13) >= Date1 And Sh.Cells(i, 13) <= Date2 Then
p = p + 1
Sh.Cells(i, 1).Resize(, 13).Copy
ws.Range("A" & p).PasteSpecial xlPasteValues
ws.Range("A" & p) = p - 9
End If
i = i + 1
Loop
Application.CutCopyMode = False
End Sub

 

عندما تقوم بالرد علي في تعليق استاذ ابراهيم الحداد اعلم جيدا مهما كان طلبي فقد تم الحل قبل ان ارى اي شيء

ماشاء الله بارك الله فيك وفي عقلك وعلمك اثابك الله 
 

  • Like 2
رابط هذا التعليق
شارك

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information