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

mahmoud nasr alhasany

03 عضو مميز
  • Posts

    166
  • تاريخ الانضمام

  • تاريخ اخر زياره

كل منشورات العضو mahmoud nasr alhasany

  1. شكرا جزيلا لك ا/احمد عبدالحليم على هذا الكود ولك منا كل احترام وتقدير شكرا لك على هذا الاهتمام
  2. لو افترضنا ان يوجد كمية 20 كرتونة فى المخزن الرئيسى للمنتج 1 ويتم تحويل 5 كرتونة ليكون رصيد المخزن الرئيسى (15) كرتونة اما المخزن 1 يوجد كمية 8 كرتونة للمنتج 1 وتم تحويل من المخزن الرئيسى 5 ليكون رصيد مخزن 1 (13) كرتونة الرجاء المساعدة
  3. صباح الخير لقد قمت بتصميم برنامج مخازن فكرة هذا البرنامج هي نقل الكمية بين المخازن وقمت بتصدير البيانات إلى شيت Mvts ومع ذلك، لا يقوم بتحديث أو نقل كمية المخزون بين المخازن. في شيت stock هل من الممكن إنشاء كود ينقل الكمية بين المخازن ويقوم بتحديث المخزون نقل المخزون بين المخازن.xlsm
  4. تم حل المشكلة بواسطة منتدى اخر وذلك لانشغال بعض الاخوة فى الرد على الموضوع كان الله فى عونهما واحببت ان ارفق الملف للاستفادة NEW EMPLOYEE TIME SHEET testing123.xls
  5. تم حل المشكلة بالنسبة للتاريخ اما بالنسبة مؤشر التنقلات( الاول -والتالى -السابق- الاخير) اريد ادراج الاكواد الخاص بها فى الفورم وذلك عند عملية البحث بتاريخ معين كمثال عند ادخال تاريخ فى txtEndDate 02/02/2023 يظهر 4 تواريخ بيانات فى الشيت ويأتى فى عملية البحث اظهار اول تاريخ من 4 بيانات لهذا التاريخ اريد التنقل وفقا لهذا التاريخ فقط واظهار العدد بين المؤشر التنقلات فى lblCod باللون الاحمر (0) Copy of NEW EMPLOYEE TIME SHEET testing.xls
  6. السلام عليكم ورحمة الله وبركاتة الرجاء المساعدة عند الاستعلام بتاريخ معين لايقوم بجلب البيانات صحيحة ولاكن يجلب اخر بيانات فى الشيت نظرا لاخر كود مدرج فى البيانات NEW EMPLOYEE TIME SHEET testing.xls
  7. Sub ImporterExcelPartirWord() 'Déclarez les variables Object pour l'application et le document Word. Dim WordApp As Object, wddoc As Object 'Déclarez une variable String pour le nom du document d'exemple et le chemin du dossier. Dim strDocNom As String 'L'instruction On Error si Word n'est pas déjà ouvert. On Error Resume Next 'Activer Word s'il est déjà ouvert. Set WordApp = GetObject(, "Word.Application") If Err.Number = 429 Then Err.Clear 'Créez une application Word si Word n'est pas déjà ouvert. Set WordApp = CreateObject("Word.Application") End If 'Assurez-vous que l'application Word est visible. WordApp.Visible = True 'Définissez la variable de chaîne strDocName. strDocNom = "C:\mesfichiers\monDocWord.docx" 'Activez l'application Word. WordApp.Activate 'Définissez la variable objet pour le nom complet du document Word et le chemin d'accès au dossier. Set worddoc = WordApp.Documents(strDocNom) 'Si le document Word n'est pas déjà ouvert, ouvrez-le. If worddoc Is Nothing Then Set worddoc = WordApp.Documents.Open(strDocNom) 'Le document est ouvert, alors activez-le. worddoc.Activate 'Copier le paragraphe 2 worddoc.Paragraphs(2).Range.Copy 'Activez votre classeur et collez le texte copié dans la cellule active. ThisWorkbook.Activate 'Collez le paragraphe 2 du document Word. ActiveSheet.Paste 'Fermez le document Word, pas besoin d'enregistrer les modifications. worddoc.Close Savechanges:=False 'Quittez l'application Word. WordApp.Quit 'Libérez la mémoire système réservée aux deux variables Object. Set worddoc = Nothing Set WordApp = Nothing End Sub
  8. وعليكم السلام ورحمة الله بركاته انا كويس
  9. الرجاء مساعدتى وان كان الموضوع الذى طرحتة سابقا لا يوجد به شئ مفهوما يتحدث من فضلكم وارجو من الاستاذ الرائع محمد هشام مساعدتى ان وقته يسمح بذلك
  10. Private Sub CommandButton1_Click() Dim n If CB_Pièce = "Code article" Then MsgBox "Veuillez choisir un Code article.", 64, "Article requis": CB_Pièce.SetFocus: Exit Sub End If If Val(TextBox81) = 0 Then MsgBox "Stock provenance vide => retrait impossible !": Exit Sub If ComboBox2 = "" Then MsgBox "Veuillez choisir un Magasin de destination.": Exit Sub Dim T$, Qté&, chn$, b As Byte: T = "Contrôle Quantité" chn = TextBox82: If chn = "" Then MsgBox "Veuillez saisir une Quantité.", 64, T: Quantitetr.SetFocus: Exit Sub chn = Replace$(chn, ",", "."): If InStr(chn, ".") > 0 Then b = 1 'ni « , » ni « . » car Qté : nombre entier ! Qté = Val(chn): If Qté = 0 Then b = 1 'si chn est du texte ou 0, alors Qté = 0 => refusé ! If b = 1 Then MsgBox "Veuillez entrer une quantité valide !", 64, T Quantitetr = "": Quantitetr.SetFocus: Exit Sub End If If Qté > Val(stocktr.Caption) Then MsgBox "Quantité supérieure au stock actuel !", 64, T Quantitetr = "": Quantitetr.SetFocus: Exit Sub End If If Val(seuil.Caption) > Val(stocktr.Caption) Then MsgBox "Impossible d'effectuer ce transfert !", 64, T Quantitetr = "": Quantitetr.SetFocus: Exit Sub End If 'si y'a pas eu d'écriture sur "Inventaire", on quitte cette sub SANS Call MajInventaire: If lgD = 0 Then Exit Sub 'appeler LigneTransfert Call LigneTransfert: If lgT = 0 Then UndoOpInv 'ci-dessus : si y'a pas eu d'écriture sur "Transfert", faut ANNULER 'l'opération qui a été faite sur "Inventaire", car une opération de 'transfert n'est PAS valable si on n'a pas pu l'écrire sur une des 'deux feuilles "Inventaire" ou "Transfert". Unload Me End Sub Private Sub MajInventaire() Dim QS&, n&, v With Worksheets("Inventaire") flgAdd = 0 n = UBound(TblInv): lgS = 0: lgD = 0 GetLig ComboBox1, n, lgS: If lgS = 0 Then Exit Sub GetLig ComboBox2, n, lgD: If lgD > 0 Then flgAdd = 1 If lgD = 0 Then flgAdd = 0: lgD = n + 3 If lgD = 65000 Then MsgBox "Le tableau en feuille Inventaire est plein !", 48 lgD = 0: Exit Sub 'on fait rien, et on sort de la sub ! End If End If Application.ScreenUpdating = 0: .Unprotect: QT = Val(Quantitetr) With .Cells(lgS, 11) ' était (lgS, 3) QS = .Value + QT: .Value = QS: stocktr = QS End With Application.EnableEvents = False .Activate ' active la feuille If flgAdd = 0 Then ' insère une ligne .Rows("4:4").Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove .Unprotect .Rows("5:5").Copy ' copie la ligne en dessous .Rows("4:4").PasteSpecial xlPasteFormats ' colle le format .Range("D5").Copy ' copie la cellule .Range("D4").Select ' sélectionne la cellule ActiveSheet.Paste ' colle (formule incluse) Application.EnableEvents = True lgD = 4 End If For v = 0 To ListBox1.ListCount - 1 With .Cells(lgD, 3) If flgAdd = 0 Then .Offset(, -2) = ListBox1.List(v, 3) 'Code article .Offset(, -1) = ListBox1.List(v, 4) 'Catégorie .Offset(, 2) = ListBox1.List(v, 5) 'Seuil d'alerte .Offset(, 3) = ListBox1.List(v, 6) 'Descriptif .Offset(, 4) = ListBox1.List(v, 7) 'Référence .Offset(, 5) = ListBox1.List(v, 8) 'Unité de mesure .Offset(, 6) = "Transfert" 'Observations .Offset(, 9) = ComboBox2 'Magasin QD = Val(.Value) + QT: .Value = QD 'Stock actuel Else .Offset(, 7) = .Offset(, 7) + Quantitetr ' End If lgT = lgT + 1 End With .Protect: Application.ScreenUpdating = -1 Next End With End Sub Private Sub LigneTransfert() Dim v 'remplir une ligne sur le tableau de la feuille "Transfert", 'mais s'il n'y a plus de ligne libre, on ne fait rien ! With Worksheets("Transfert") 'Lastrow = Range("a" & Rows.Count).End(xlUp).Row + 1 lgT = .Cells(Rows.Count, 1).End(3).Row + 1 For v = 0 To ListBox1.ListCount - 1 If lgT = 650000 Then MsgBox "Le tableau en feuille Transfert est plein !", 48 lgT = 0: Exit Sub 'on fait rien, et on sort de la sub ! End If Dim Stock1&, Stock2& Application.ScreenUpdating = 0: .Unprotect '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' Stock2 = Val(stocktr): Stock1 = Stock2 + QT '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' With .Cells(lgT, 1) .Value = CB_Pièce 'Code article .Offset(, 1) = ListBox1.List(v, 2) 'Catégorie .Offset(, 2) = ListBox1.List(v, 3) 'Désignation .Offset(, 3) = ListBox1.List(v, 4) 'Référence ' .Offset(, 4) = ListBox1.List(v, 4) 'Stock actuel .Offset(, 5) = ListBox1.List(v, 6) 'Unité .Offset(, 6) = Date 'Date .Offset(, 7) = ComboBox1 'Provenance .Offset(, 8) = ComboBox2 'Destination .Offset(, 9) = QT '= ListBox1.List(v, 13) 'Quantité transférée '.Offset(, 10) = Stock2 'STOCK PR ' .Offset(, 11) = QD 'STOCK DES .Offset(, 12) = TextBox1 .Offset(, 13) = Format(Now, "mm/dd/yyyy hh:mm am/pm") lgT = lgT + 1 End With .Protect: Application.ScreenUpdating = -1 Next End With End Sub يوجد يوزرفورم Transfer1 نظرا لكثرة الاصناف اضفت listbox1 الى الفورم وعند ترحيل البيانات الى الليست بوكس يعمل بنجاح ولاكن عند ترحيلها الى ورقة العمل لايقوم بالحفظ يوجد خطاء ولا اعرف السبب تحويلات بين المخازن2.xlsm
  11. Private Sub CB_Pièce_Change() ' On Error Resume Next ComboBox2.Clear: Quantitetr = "" catetr = "": Desitr = "": reftr = "": stocktr = "": unitr = "": seuil = "" With ComboBox1 .Clear If CB_Pièce = "Code article" Then .AddItem "Magasin": .ListIndex = 0: Exit Sub End If Dim i& 'For i = UBound(arrPart, 2) To LBound(arrPart, 2) Step -1 For i = 1 To UBound(TblInv) If TblInv(i, 1) = CB_Pièce Then .AddItem TblInv(i, 12) 'crée la liste magasin Provenance 'écrit les infos des 5 labels (seulement s'ils sont vides) If catetr = "" Then catetr = TblInv(i, 2) 'Catégorie If Desitr = "" Then Desitr = TblInv(i, 6) 'Désignation If reftr = "" Then reftr = TblInv(i, 7) 'Référence If stocktr = "" Then stocktr = TblInv(i, 4) 'Stock Provenance If unitr = "" Then unitr = TblInv(i, 8) 'Unité If seuil = "" Then seuil = TblInv(i, 5) 'seuil If Me.TextBox_Stock_Initial = "" Then Me.TextBox_Stock_Initial = TblInv(i, 3) ' stockinitial End If Next i .ListIndex = 0 End With End Sub السلام عليكم ورحمة الله وبركاتة هل يمكنكم المساعدة عند اختار كود الصنف E124 تتم العملية ولاكن عند اختيار كود الصنف فى الكمبوبوكس 127 يحدث خطاء فماالمشكلة رجاء المساعدة تحويلات بين المخازن2.xlsm
  12. السلام عليكم ورحمه الله وبركاته هل يوجد فكرة تمكننى عند اختيار اسنم الصنف يظهر الكميه الموجوده لهذا المخزن المتصرف منه
  13. السلام عليكم ورحمة الله وبركاتة الرجاء مساعدتى عند اختيار اسم المخزن المنصرف يظهر الكمية الموجوده فى هذا المخزن القى نظرة الصورة الموضحة من فضلكم برنامج مخازن امين المخزن(1).xlsm
  14. السلام عليكم ورحمه الله وبركاته هل يوجد احد يساعدني فى هذا الموضوع
  15. ThisWorkbook.Activate Dim old_name, new_name old_name = Me.ComboBox1.Value new_name = Me.TextBox1.Value fda = ww.CountIf(Sheet2.Range("b2:b2000"), old_name) If fda <= 0 Then: MsgBox " هذا الاسم غير موجود فى قاعدة البيانات الخاص بهذا الفاتورة رجاء ادخال مسلسل رقم 1 " _ , mhmd, "ali ": Exit Sub يوجد قائمة كومبوبوكس بها حركات على حسب نوع الفاتورة مثل صرف /شراء /بيع /مرتجع/ رصيد اول مدة/ وصادر وكل حركة فاتورة لها كود سريل مخصص على حسب نوع الفاتورة ولاكن فى قاعدة البيانات لايوجد حركة فاتورة صادر فعندما اريد ان ابتدى باول حركة يضيف سريال كود الحركة برقم ( 1 ) بعد الرسالة المستعلمة msgbox Copy of مسلسل فاتورة على حسب نوع الفاتورة.xlsm
  16. عفوا اخى alliiia لعلى لم ابين او اوضح لك المطلوب جيدا الف شكر لك اخى alliiia هذا هو المطلوب
  17. شكر على الاستجابة السريعة اخى alliiia ولاكن انا اقصد مبيعات اخر العميل قيمة ولو على سبيل المثال ان اسماء العملاء فى العمود a متكررة اريد اخر قيمة لهذا العميل Mahmoud كمثال يوجد له قيم متعددة 1520 , 2058 , 2772 , 3486 , 4200 Mahmoud اخر قيمة له 4200
  18. السلام عليكم ورحمة الله وبركاتة أيمكنك أن تساعدونى عند تحديد اسم عميل معين في ComboBox1 إحضار القيمة الأخيرة للعميل المدرجة في الورقة إلى selse.xlsmtextbox1
  19. نا بصدد شغال على يوميةمخازن و مبيعات مناديب موضحة به رصيد البضاعة المتبقية بالسيارة من اليوم السابق لكل مندوب وقيمة البضاعة المستلمة من المخازن لكل مندوب و رصيد المرتجعات لكل مندوب و رصيد البضاعة المباعة لكل مندوب ورصيد المتبقى بالسيارة وايضا اظهار قيمة الخصم التجارى و صافى قيمة بعد الخصم ارجو المساعده
  20. السلام عليكم ورحمة الله وبركاتة عندى برنامج فورم امين مخزن يوجد به حركات شراء وارتجاع اصناف من المورد الى المخزن الرئيسى ويوجد ايضا تحويلات بين المخازن او السيارات (المندوب ) اريد عند اختيار كود الصنف واسم المخزن او المندوب اظهار كمية المخزون التابع للمخزن الحركة فى التكست بوكس 6 برنامج مخازن امين المخزن.xlsm
×
×
  • اضف...

Important Information