اذهب الي المحتوي
أوفيسنا

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

قام بنشر

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

شكرا مقدما لخبراءنا بالموقع الغني بالمعلومات القيمة وتجاوبهم السريع 

الرجاء التعديل علي الكود بحيث عند احتيار مسار الفولدر لاي مكان في الكمبيوتر يقوم بحفظ ملف PDFداخل الفولدر 

ملف.xlsm

 

 

قام بنشر

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

يمكنك استخدام الكود التالي في VBA لحفظ ملف PDF داخل الفولدر الذي تم اختياره:

Sub SaveAsPDF()
    Dim FilePath As Variant
    Dim FileName As String
    
    ' اختيار مسار الفولدر
    FilePath = Application.GetSaveAsFilename(FileFilter:="PDF Files (*.pdf), *.pdf", Title:="Save As PDF")
    
    ' التأكد من ان تم اختيار مسار الفولدر وليس الالغاء
    If FilePath <> False Then
        ' استخراج اسم الملف من المسار
        FileName = Dir(FilePath)
        
        ' حفظ الورقة الحالية كملف PDF في المسار المحدد
        ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=FilePath, Quality:=xlQualityStandard
        MsgBox "تم حفظ الملف بنجاح في الفولدر: " & FilePath
    End If
End Sub


```

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

  • Like 1
قام بنشر

ماش شاء الله بارك الله في عمرك مجهود جبار

تعديل اخير هل بالامكان تعديل بالكود بحيث اسم الملف يكون باسم الموظف مباشرة كما بالخلية B8

بدل من ظهور شاشة وكتابة اسم الملف

قام بنشر (معدل)
13 دقائق مضت, ahmed sewelam said:

ماش شاء الله بارك الله في عمرك مجهود جبار

تعديل اخير هل بالامكان تعديل بالكود بحيث اسم الملف يكون باسم الموظف مباشرة كما بالخلية B8

بدل من ظهور شاشة وكتابة اسم الملف

تأكد ان يكون لكل مستخدم اسمه محفوظ في الـ cell B8 ، فهذا الاسم سيتم حفظه مع الملف الـ PDF ككود. يجب تغيير السطر التالي:

FileName = Dir(FilePath)

 

إلى:

FileName = Range("B8").Value

هذا الكود سيجعل اسم الملف الـ PDF يأخذ قيمة الـ cell B8 مباشرة كاسم للموظف.

تم تعديل بواسطه Saleh Ahmed Rabie
  • Like 1
قام بنشر

للاسف لم يقم الكود بعمل المطلوب حيث تم تغيير الكود لكن تظهر شاشة ادخال اسم الملف والمطلوب انه يحفظ تلقائي الملف باسم الموظف كما بالخلية B8 داخل الفولدر

  • أفضل إجابة
قام بنشر

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

تفضل اخي جرب هدا 

Private Sub CommandButton1_Click()
Dim WS As Worksheet: Set WS = Sheet3
Dim FileName As String, strDirname As String, Patch As String, strDefpath As String
  strDirname = Me.TextBox1.Text
  FileName = WS.[B8]
  strDefpath = Label2.Caption
  lr = WS.Range("B" & WS.Rows.Count).End(xlUp).Row
  WS.PageSetup.PrintArea = "A1:D" & lr + 5
  On Error Resume Next
  If FileName = "" Then MsgBox "يرجى اظافة اسم الملف":   Exit Sub
  If Not Right(strDefpath, 1) = "\" Then strDefpath = strDefpath & "\"
  If Not Right(FileName, 4) = ".Pdf" Then FileName = FileName & ".Pdf"
  If Dir(strDefpath & strDirname, vbDirectory) = "" Then MkDir strDefpath & strDirname
  Patch = strDefpath & strDirname & "\" & FileName
  WS.ExportAsFixedFormat Type:=xlTypePDF, FileName:=Patch
End Sub

 

ملف V2.xlsm

  • Like 3
  • Thanks 1
قام بنشر

متشكر جدا لحضراتكم ورفع الله قدركم وزادكم من فضله علما وخلقا تحياتي للمهنس صالح وللمهندس محمد هشام ملف الاستاذ محمد هشام قام بالمطلوب بالظبط الف شكر لحضراتكم

قام بنشر

في حالة الرغبة باستخدام الكود الخاص بك يكفي تعديله  فقط على الشكل التالي 

Sub PDF()
Dim Path As String
Path = Label2.Caption

'Code.........................

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, FileName:= _
          Path & "ملف رواتب الموظفين\" & fName, Quality:=xlQualityStandard, _
            IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False

End Sub

 

  • Like 1
قام بنشر
3 دقائق مضت, ahmed sewelam said:

متشكر جدا لحضراتكم ورفع الله قدركم وزادكم من فضله علما وخلقا تحياتي للمهندس صالح ربيع وللمهندس محمد هشام ملف الاستاذ محمد هشام قام بالمطلوب بالظبط الف شكر لحضراتكم

 

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