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

تصدير او حفظ تقرير الى صورة jpg


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

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

كل عام وانتم بخير بمناسبة شهر رجب المحرم 

اخوانى واسأتذتى الاعزاء

بالمرفقات قاعدة بيانات بها جدول ونموذج وتقرير عند فتح النموذج هناك زر لمعاينة التقرير قبل الطباعة  وبالضغط عليه يتم فتح التقرير فى وضع المعاينة

ويوجد بالتقرير زر pdf وهو لتصدير او حفظ التقرير بهيئته كما هو ظاهر الى صيغة pdf بالضغط على الزر يفتح مربع حوار لاختيار مكان الحفظ 

اما الزر الاخر زر jpg وهو لتصدير او حفظ التقرير كما هو ظاهر بهيئته الى صورة بصيغة jpg  واريد الكود الذى ينفذ هذا المطلوب ويكن بنفس طريقة زر pdf من حيث فتح مربع حوار اختيار مكان الحفظ 

ولكم منى جزيل الشكر والعرفان

jpg.rar

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

  • 5 years later...

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

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

مثل :
https://www.ab-tools.com/en/software/freeimageprinter/

 

أو
https://virtual-imageprinter.en.softonic.com/

 

ويمكنك أن تعين هذه الطابعة كطابعة افتراضية لهذا التقرير بحيث يتم الحفظ مباشرة عليها 🙂 

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

السلام عليكم ورحمة الله وبركاته
بالإضافة لما تفضل به الأستاذ موسى جزاه الله خيرا
انا استخدم هذا البرنامج Universal Document Converter  وهذا موقع الشركة: https://www.print-driver.com/download 
بعد إتمام عملية تنصيب البرنامج تابع الفيديو . ومرفق ملفك بعد التعديل.

بالتوفيق

 

 

 

 

jpg.rar شرج عمل برنامج Universal Document Converter.rar

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

12 ساعات مضت, سامي الحداد said:

السلام عليكم ورحمة الله وبركاته
بالإضافة لما تفضل به الأستاذ موسى جزاه الله خيرا
انا استخدم هذا البرنامج Universal Document Converter  وهذا موقع الشركة: https://www.print-driver.com/download 
بعد إتمام عملية تنصيب البرنامج تابع الفيديو . ومرفق ملفك بعد التعديل.

بالتوفيق

 

 

 

 

jpg.rar 38.48 kB · 11 downloads شرج عمل برنامج Universal Document Converter.rar 4.28 \u0645\u064a\u062c\u0627 \u0628\u0627\u064a\u062a · 21 downloads

جزاك الله خيرا 
لو محتاج عند التصدير يحفظ الصوره فى فولدر محدد برقم العميل هياخده من النموذج واسم الصوره يحمل اسم العميل والتاريخ الموجود فى النموذج 
صيغه التعديل هتكون ايه ؟
 
مثل الكود ده بدل ماهو PDF يكون صوره 

Dim FS, Cf, strFolder
Const msoFileDialogFilePicker As Long = 3
Dim objDialog As Object
Set objDialog = Application.FileDialog(msoFileDialogFilePicker)
strFolder = "D:\System\PDF\" & Me.id
Set FS = CreateObject("Scripting.FileSystemObject")
If FS.FolderExists(strFolder) = False Then
Set Cf = FS.CreateFolder(strFolder)
If FS.FolderExists(strFolder) = True Then
End If
End If
 Dim FileName As String, fldrPath As String, filepath As String
  Dim answer As Integer
 
  FileName = Me.pn & " " & "-" & " " & Me.tes & " " & "-" & " " & Format([Qdate], "dd-mm-yyyy")       'filename for PDF file*
  fldrPath = "D:\System\PDF\" & Me.id  'folder path where pdf file will be saved *
 'CurrentProject.Path &
  filepath = fldrPath & "\" & FileName & ".pdf"
 
  'check if file already exists
  If FileExists(filepath) Then
    answer = MsgBox(Prompt:="PDF file already exists: " & vbNewLine & filepath & vbNewLine & vbNewLine & _
      "هل تريد استبدال الملف الموجود؟", Buttons:=vbYesNo, Title:="هذا الملف موجود")
   If answer = vbNo Then Exit Sub
 End If
 


DoCmd.OutputTo ObjectType:=acOutputReport, objectName:="QWE", outputformat:=acFormatPDF, outputFile:=filepath

 

تم تعديل بواسطه UserUser2
رابط هذا التعليق
شارك

منذ ساعه, UserUser2 said:

جزاك الله خيرا 
لو محتاج عند التصدير يحفظ الصوره فى فولدر محدد برقم العميل هياخده من النموذج واسم الصوره يحمل اسم العميل والتاريخ الموجود فى النموذج 
صيغه التعديل هتكون ايه ؟
 
مثل الكود ده بدل ماهو PDF يكون صوره 

Dim FS, Cf, strFolder
Const msoFileDialogFilePicker As Long = 3
Dim objDialog As Object
Set objDialog = Application.FileDialog(msoFileDialogFilePicker)
strFolder = "D:\System\PDF\" & Me.id
Set FS = CreateObject("Scripting.FileSystemObject")
If FS.FolderExists(strFolder) = False Then
Set Cf = FS.CreateFolder(strFolder)
If FS.FolderExists(strFolder) = True Then
End If
End If
 Dim FileName As String, fldrPath As String, filepath As String
  Dim answer As Integer
 
  FileName = Me.pn & " " & "-" & " " & Me.tes & " " & "-" & " " & Format([Qdate], "dd-mm-yyyy")       'filename for PDF file*
  fldrPath = "D:\System\PDF\" & Me.id  'folder path where pdf file will be saved *
 'CurrentProject.Path &
  filepath = fldrPath & "\" & FileName & ".pdf"
 
  'check if file already exists
  If FileExists(filepath) Then
    answer = MsgBox(Prompt:="PDF file already exists: " & vbNewLine & filepath & vbNewLine & vbNewLine & _
      "هل تريد استبدال الملف الموجود؟", Buttons:=vbYesNo, Title:="هذا الملف موجود")
   If answer = vbNo Then Exit Sub
 End If
 


DoCmd.OutputTo ObjectType:=acOutputReport, objectName:="QWE", outputformat:=acFormatPDF, outputFile:=filepath

 

لا أعتقد أنه من الممكن تحويل التقرير وحفظه بصيغة صورة JPG بدون وسيط 🤔

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

46 دقائق مضت, Foksh said:

لا أعتقد أنه من الممكن تحويل التقرير وحفظه بصيغة صورة JPG بدون وسيط 🤔

محتاج تنفذها بالوسيط مثل مثال الاستاذ سامى 

 

 

46 دقائق مضت, Foksh said:

يحفظ الصوره فى فولدر محدد برقم العميل هياخده من النموذج واسم الصوره يحمل اسم العميل والتاريخ

 

تم تعديل بواسطه UserUser2
رابط هذا التعليق
شارك

21 ساعات مضت, UserUser2 said:

محتاج تنفذها بالوسيط مثل مثال الاستاذ سامى 

الوسيط كأحد البرامج التي تدعم حفظ التقارير بصيغة Pdf ثم تحولها الى صورة مثل Irfan .. أو بأحدى الطرق التي ذكرها الأساتذة ،

انا عن نفسي استخدم الطريقة التي أشار إليها الاستاذ خليفة و الاستاذ سامي الحداد

تم تعديل بواسطه Foksh
رابط هذا التعليق
شارك

19 ساعات مضت, kkhalifa1960 said:
 

اقرأ هذا المحتوي ونزل الطابعة  (How to Convert Access Report to JPEG) 

 

15 ساعات مضت, Foksh said:

انا عن نفسي استخدم الطريقة التي أشار إليها الاستاذ خليفة

هلا بالشباب هذا هو نفس البرنامج الوسيط الذي استخدمته انظروا لمشاركتي السابقة لقد عملت فيديو والملف المرفق مع الاكواد.

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

7 دقائق مضت, سامي الحداد said:

هلا بالشباب هذا هو نفس البرنامج الوسيط الذي استخدمته انظروا لمشاركتي السابقة لقد عملت فيديو والملف المرفق مع الاكواد.

كلامك سليم 100000 % ، كل العذر منك استاذنا @سامي الحداد ، ولكني فعلاً لم اقم بتجربة المرفق وكنت اتصفح من الجوال :jump:

 

هذا دليل ان الواحد مع التعب يحس الاسلاك في مخه تعمل ماس :clapping:

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

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

تفضل اخي الكريم @UserUser2 

تم تنفيذ الخطوات التالية:

1. سيتم إنشاء مجلد "Documents" بجانب قاعدة البيانات.

2. سيتم إنشاء مجلد "PDF" تحت مجلد "Documents".

3. سيتم إنشاء مجلد "JPEG" تحت مجلد "Documents".

الغرض من إنشاء هذه المجلدات هو تلبية طلب الأخ السائل، الذي رغب في حفظ الصورة عند التصدير في مجلد محدد برقم العميل واسم الصورة تحمل اسم العميل والتاريخ الموجود في النموذج. ونظرًا لصعوبة تنفيذ هذا الطلب بالنسبة للصور بواسطة برنامج وسيط ، اما بالنسبة للــ  PDF  فآمره سهل جدا وهو ما تم عمله اولا فقد تم تنفيذ الخطوات التالية بعد إنشاء المجلدات:

1. يتم حفظ الملف بالأسماء المذكورة والتاريخ بصيغة PDF.

 2. يتم إرسال الملف للطابعة الافتراضية "Universal Documents Converter".

3. يتم تحديد الصيغة المطلوبة، وفي حالتنا نريد صيغة الصور JPEG.

4. يتم إنشاء الملف المطلوب بكلا الصيغتين PDF و JPEG.

5. يتم حفظ الملف تحت المجلد الخاص به.  

الاكواذ المستخدمة

Option Compare Database
Option Explicit

Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _
    (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, _
    ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long

Private Sub CmdPrint_Click()
    Dim Fs As Object
    Dim StrFolder As String, FilePathPDF As String, FileName As String

    Set Fs = CreateObject("Scripting.FileSystemObject")
    StrFolder = CurrentProject.Path & "\Documents"
    If Not Fs.FolderExists(StrFolder) Then
        On Error Resume Next
        Fs.CreateFolder StrFolder
        On Error GoTo 0
        If Err.Number <> 0 Then
            MsgBox "حدث خطأ أثناء إنشاء المجلد الرئيسي: " & Err.Description, vbCritical + vbOKOnly, "خطأ"
            Err.Clear
            Exit Sub
        End If
    End If

    Dim PDFFolder As String
    PDFFolder = StrFolder & "\PDF"
    If Not Fs.FolderExists(PDFFolder) Then
        On Error Resume Next
        Fs.CreateFolder PDFFolder
        On Error GoTo 0
        If Err.Number <> 0 Then
            MsgBox " PDF خطأ في إنشاء مجلد فرعي " & Err.Description, vbCritical + vbOKOnly, "خطأ"
            Err.Clear
            Exit Sub
        End If
        MsgBox "الفرعي بنجاح PDF تم إنشاء المجلد", vbInformation + vbOKOnly, "تأكيد"
    End If

    FileName = Me.ID & " - " & Me.CNo & " - " & Me.CName & " - " & Format([iDate], "dd-mm-yyyy")
    FilePathPDF = PDFFolder & "\" & FileName & ".PDF"
    
    DoCmd.OpenReport "Report1", acViewPreview, , "[ID] = " & Me.ID
    DoCmd.OutputTo acOutputReport, "Report1", acFormatPDF, FilePathPDF, False
    DoCmd.Close acReport, "Report1", acSaveNo

    ShellExecute 0, "Open", FilePathPDF, vbNullString, vbNullString, vbNormalFocus
    ShellExecute 0, "Print", FilePathPDF, vbNullString, vbNullString, vbNormalFocus
    
    Dim JPEGFolder As String
    JPEGFolder = StrFolder & "\JPEG"
    If Not Fs.FolderExists(JPEGFolder) Then
        On Error Resume Next
        Fs.CreateFolder JPEGFolder
        On Error GoTo 0
        If Err.Number <> 0 Then
            MsgBox " JPEG خطأ في إنشاء مجلد فرعي  " & Err.Description, vbCritical + vbOKOnly, "خطأ"
            Err.Clear
            Exit Sub
        End If
        MsgBox "الفرعي بنجاح JPEG تم إنشاء المجلد", vbInformation + vbOKOnly, "تأكيد"
    End If
End Sub

بالنسبة للطابعة يجب ان تحفظ اعدادت موقع حفظ الملف Documents \Jpeg   مثال :   C:\Users\LENOVO\Downloads\TEST IMAGE\Documents\JPEG

وهذا هو المرفق

بالتوفيق

TEST IMAGE 2.rar

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

متابعة مع أخي الأستاذ @سامي الحداد ، لا زيادة عنه :smile: :-

لإتمام العملية المطلوبة ، يجب أن يكون لديك الملف udceng.exe وهو ضروري لنجاح عملية حفظ التقرير على شكل صورة من الرابط التالي ، , والسبب وجود مكتبة خاصةبواسطة البرنامج . ثم يكون أمامك خياران اثنان .

  • وضع الملف الذي تم تحميله من الرابط أعلاه حسب المسار الظاهر لديك في جهازك كما في النقطة رقم 2 .

How.png.b2de3cc51941b18de7c496b0be8cea26.png

  • أو اختيار مسار الملف ( ويفضل أن يكون بجانب قاعدة البيانات التي تعمل عليها ) بشكل يدوي كما في النقطة 3 .
  • والنقطة 1 هي إن كان إصدار الأوفيس لديك 32 فلا مشكلة فيها ، وأن كانت النسخة 64 ، فسيكون عليك تعديل الكود إلى التالي :-
Private Declare PtrSafe Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _
    (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, _
    ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long

 

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

أحسنت وأحسن الله اليك اخي الاستاذ @Foksh

بالفعل لقد فاتتني الاشارة الى المكتبات ونسخة 64 لان الاخ @UserUser2 كان بالفعل قد استخدم الطابعة الافتراضية لان ملفه كانت المكتبات موجودة بالفعل ولهذا لم افكر بالامر😄

اشكرك جزيل الشكر اخي الفاضل على هذه الاضافات ربي يسعدك.

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

3 دقائق مضت, سامي الحداد said:

لان ملفه كانت المكتبات موجودة بالفعل

ولا يهمك أخي @سامي الحداد ، علمت ذلك ، وأعلم أنها لم تفُتك هذه النقطة . وإنما كان تعليقي بشكل عام :yes:

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

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