صفحه 2 از 2 نخستنخست 12
نمایش نتایج: از شماره 11 تا 19 , از مجموع 19

موضوع: نحوه گرفتن خروجی پی دی اف از فرم در vba به چه صورت میشود؟

  1. #11


    آخرین بازدید
    2019/10/02
    تاریخ عضویت
    January 2017
    محل سکونت
    تهران
    نوشته ها
    85
    امتیاز
    31
    سپاس
    92
    سپاس شده
    21 در 8 پست
    تعیین سطح نشده است

    نقل قول نوشته اصلی توسط ali.b نمایش پست ها
    سلام
    دوستان عزیز این انجمن همواره در اسرع وقت سوالات رو پاسخ میدن گاهی شرایطی پیش میاد ممکنه برخی سوال ها نیازمند زمان بیشتری باشه پس لازمه صبر بیشتر هست در مقابل تایمی که دوستان برای ارائه پاسخ محبت میکنند
    و اما پاسخ شما
    کد PHP:
    Application.Dialogs(xlDialogPrint).Show 
    از این کد استفاده کنید
    اما چوناین کدها مستقیا بر اساس تنظیم خود پرینتر عمل می کنن و شما هم برای فرم در نظر دارین ممکنه خوب عمل نکنه
    پیشنهادم اینه شما یک شیت برای اینکار در نظر بگیرین و اول از فرم عکس بگیره و عکس در شیت ذخیره بشه و سپس با دستور PrintPreview بتونید به هدفتون برسین

    فایل نمونه رو قرار دادم.

    سلام
    ممنونم از راهنمایی خوبتون

    فقط این توی تنظیمات شیت رو انتخاب میکنه برای چاپ فرم کاری نمیکنه
    فقط هم میخوام از این فرم پرینت گرفته بشه نه شیتش
    ویرایش توسط ne&in : 2017/04/11 در ساعت 14:36
    این که در چه مسیری هستی خیلی مهم تر از این است که با چه سرعتی حرکت میکنی
    سرعت همیشه دلیل خوبی برای موفقیت نیست


  2.  

  3. #12


    آخرین بازدید
    تاریخ عضویت
    January 2014
    نوشته ها
    798
    امتیاز
    1667
    سپاس
    590
    سپاس شده
    1,242 در 436 پست
    تعیین سطح نشده است

    فرم ابعاد ثابتی داره پس کافیه شما حاشیه چاپی اون شیتی که عکس فرم در اون درج میشه رو بر اساس ابعاد فرم تنظیم کنید
    نقل قول نوشته اصلی توسط ne&in نمایش پست ها
    سلام
    ممنونم از راهنمایی خوبتون

    فقط این توی تنظیمات شیت رو انتخاب میکنه برای چاپ فرم کاری نمیکنه
    فقط هم میخوام از این فرم پرینت گرفته بشه نه شیتش


  4. سپاس ها (1)


  5. #13


    آخرین بازدید
    2019/10/02
    تاریخ عضویت
    January 2017
    محل سکونت
    تهران
    نوشته ها
    85
    امتیاز
    31
    سپاس
    92
    سپاس شده
    21 در 8 پست
    تعیین سطح نشده است

    نقل قول نوشته اصلی توسط ali.b نمایش پست ها
    فرم ابعاد ثابتی داره پس کافیه شما حاشیه چاپی اون شیتی که عکس فرم در اون درج میشه رو بر اساس ابعاد فرم تنظیم کنید
    منظورتون رو متوجه نشدم
    بنده میگم توی تنظیمات چاپ میره روی active sheet روی بقیه کار نمیکنه
    این که در چه مسیری هستی خیلی مهم تر از این است که با چه سرعتی حرکت میکنی
    سرعت همیشه دلیل خوبی برای موفقیت نیست


  6. #14


    آخرین بازدید
    تاریخ عضویت
    January 2014
    نوشته ها
    798
    امتیاز
    1667
    سپاس
    590
    سپاس شده
    1,242 در 436 پست
    تعیین سطح نشده است

    نقل قول نوشته اصلی توسط ne&in نمایش پست ها
    منظورتون رو متوجه نشدم
    بنده میگم توی تنظیمات چاپ میره روی active sheet روی بقیه کار نمیکنه
    شما گفتین ی کد میخوان که از فرم پرینت بگیره و مشکل تون این بود که نمی تونید حاشیه چاپ رو بر اساس ابعاد فرم تغییر بدین بنابراین بنده اون فایل نمونه رو فرستادم
    وقتی کد اجرا شه از فرم عکس میگیره و در شیت درج میکنه کافیه شما تنظیمات چاپ اون شیتی که عکس در اون درح میشه رو بر اساس تصویر درج شده تنظیم کنید. کافیه یک بار تنظیم کنید همین.

    سوالتون در مورد فرم بود من منظورتون ازحمله بقیه نمی فهمم شما هدفوت فرم هست یا شیت های دیگه؟
    اگه بقیه فرم ها هست طبیعتا باید برای بقیه فرم ها بست بدین اگه منظورتون شیت هست باید ی موضوع جدید ایجاد کنید چون محور سوال شما در مورد فرم هست


  7. سپاس ها (1)


  8. #15


    آخرین بازدید
    2019/10/02
    تاریخ عضویت
    January 2017
    محل سکونت
    تهران
    نوشته ها
    85
    امتیاز
    31
    سپاس
    92
    سپاس شده
    21 در 8 پست
    تعیین سطح نشده است

    نقل قول نوشته اصلی توسط ali.b نمایش پست ها
    شما گفتین ی کد میخوان که از فرم پرینت بگیره و مشکل تون این بود که نمی تونید حاشیه چاپ رو بر اساس ابعاد فرم تغییر بدین بنابراین بنده اون فایل نمونه رو فرستادم
    وقتی کد اجرا شه از فرم عکس میگیره و در شیت درج میکنه کافیه شما تنظیمات چاپ اون شیتی که عکس در اون درح میشه رو بر اساس تصویر درج شده تنظیم کنید. کافیه یک بار تنظیم کنید همین.

    سوالتون در مورد فرم بود من منظورتون ازحمله بقیه نمی فهمم شما هدفوت فرم هست یا شیت های دیگه؟
    اگه بقیه فرم ها هست طبیعتا باید برای بقیه فرم ها بست بدین اگه منظورتون شیت هست باید ی موضوع جدید ایجاد کنید چون محور سوال شما در مورد فرم هست
    با سلام و احترام
    شاید خوب بیان نکردم سوالم رو
    ببنید من یک فرم دارم که میخوام بدون اینکه در محیط اکسل وارد بشم و کلا بدون اینکه پرینتی از شیتی گرفته بشه ....
    از فرمم عین کار پرینت اسکرین از خود فرم پرینت بگیره و همین طور ازش به حای پرینت خروجی پی دی اف بگیره ...

    این کار شدنی هست ؟ به جه شکل
    میدونم پرینت رو میشه جون با کد userform1.printform میشه ولی عمودی میگیره ولی فرمم عرض زیاد هست و زیاد هست افقی بگیره ...

    اما نمیدونم چطوری میشه تنظیم پرینتر بیاد و دستور چاپ میدم از پرینتر بگیره به جای شیت اون فرم
    این که در چه مسیری هستی خیلی مهم تر از این است که با چه سرعتی حرکت میکنی
    سرعت همیشه دلیل خوبی برای موفقیت نیست


  9. #16


    آخرین بازدید
    تاریخ عضویت
    January 2014
    نوشته ها
    798
    امتیاز
    1667
    سپاس
    590
    سپاس شده
    1,242 در 436 پست
    تعیین سطح نشده است

    برای اون حالت من راهی پیدا نکردم
    ببنید نیاز نیست حتما اون شیت فعال باشه شما شیت رو مخفی کن همین!! وقتی درخواست داده شد
    شما از اکسل انتظار برنامه C رو نداشته باشین.
    کد:
    Private Declare PtrSafe Sub keybd_event Lib "user32" (ByVal bVk As Byte, _                                              ByVal bScan As Byte, _
                                                  ByVal dwFlags As Long, _
                                                  ByVal dwExtraInfo As Long)
    Private Const VK_LMENU = &HA4
    Private Const VK_SNAPSHOT = &H2C
    Private Const VK_CONTROL = &H11
    Private Const VK_V = &H56
    Private Const VK_0x79 = &H79
    Private Const KEYEVENTF_EXTENDEDKEY = &H1
    Private Const KEYEVENTF_KEYUP = &H2
     
     
    Private Sub CommandButton1_Click()
     Dim sAppOs As String
        Dim wks As Worksheet
        'get oparating system
    Call d
        
        sAppOs = Application.OperatingSystem
     
        Application.DisplayAlerts = False
        Application.ScreenUpdating = False
     
        If Mid(sAppOs, 18, 2) = "NT" Then
        ' WinNT,Windows2000,WindowsXP - Using Win32API
            Call keybd_event(VK_LMENU, VK_V, KEYEVENTF_EXTENDEDKEY, 0)
            Call keybd_event(VK_SNAPSHOT, VK_0x79, KEYEVENTF_EXTENDEDKEY, 0)
            Call keybd_event(VK_LMENU, VK_V, KEYEVENTF_EXTENDEDKEY Or KEYEVENTF_KEYUP, 0)
            Call keybd_event(VK_SNAPSHOT, VK_0x79, KEYEVENTF_EXTENDEDKEY Or KEYEVENTF_KEYUP, 0)
        Else
        ' Windows95,Windows98,WindowsME
            Call keybd_event(VK_SNAPSHOT, 0, KEYEVENTF_EXTENDEDKEY, 0)
            Call keybd_event(VK_SNAPSHOT, 0, KEYEVENTF_EXTENDEDKEY Or KEYEVENTF_KEYUP, 0)
        End If
        DoEvents
        Unload Me
    Sheet2.Visible = xlSheetVisible
        Sheet2.Select
        Range("A1").Select
        ActiveSheet.Paste
        'wks.SaveAs Filename:="D:/myfile.htm", FileFormat:=xlHtml
        'wks.Parent.Close False
        Worksheets("ab").PrintPreview
         Application.ScreenUpdating = True
        Application.DisplayAlerts = True
        Sheet2.Visible = xlSheetHidden
    End Sub
    این کدهایی که با رنگ قرمز نشون دادم رو قرار بدین مشکلتون حل میشه
    رنگ سبز رو هم تو کد قبلی ی سره هست مثل این رنگ جدا کنید


  10. سپاس ها (1)


  11. #17


    آخرین بازدید
    2019/10/02
    تاریخ عضویت
    January 2017
    محل سکونت
    تهران
    نوشته ها
    85
    امتیاز
    31
    سپاس
    92
    سپاس شده
    21 در 8 پست
    تعیین سطح نشده است

    نقل قول نوشته اصلی توسط ali.b نمایش پست ها
    برای اون حالت من راهی پیدا نکردم
    ببنید نیاز نیست حتما اون شیت فعال باشه شما شیت رو مخفی کن همین!! وقتی درخواست داده شد
    شما از اکسل انتظار برنامه C رو نداشته باشین.
    کد:
    Private Declare PtrSafe Sub keybd_event Lib "user32" (ByVal bVk As Byte, _                                              ByVal bScan As Byte, _
                                                  ByVal dwFlags As Long, _
                                                  ByVal dwExtraInfo As Long)
    Private Const VK_LMENU = &HA4
    Private Const VK_SNAPSHOT = &H2C
    Private Const VK_CONTROL = &H11
    Private Const VK_V = &H56
    Private Const VK_0x79 = &H79
    Private Const KEYEVENTF_EXTENDEDKEY = &H1
    Private Const KEYEVENTF_KEYUP = &H2
     
     
    Private Sub CommandButton1_Click()
     Dim sAppOs As String
        Dim wks As Worksheet
        'get oparating system
    Call d
        
        sAppOs = Application.OperatingSystem
     
        Application.DisplayAlerts = False
        Application.ScreenUpdating = False
     
        If Mid(sAppOs, 18, 2) = "NT" Then
        ' WinNT,Windows2000,WindowsXP - Using Win32API
            Call keybd_event(VK_LMENU, VK_V, KEYEVENTF_EXTENDEDKEY, 0)
            Call keybd_event(VK_SNAPSHOT, VK_0x79, KEYEVENTF_EXTENDEDKEY, 0)
            Call keybd_event(VK_LMENU, VK_V, KEYEVENTF_EXTENDEDKEY Or KEYEVENTF_KEYUP, 0)
            Call keybd_event(VK_SNAPSHOT, VK_0x79, KEYEVENTF_EXTENDEDKEY Or KEYEVENTF_KEYUP, 0)
        Else
        ' Windows95,Windows98,WindowsME
            Call keybd_event(VK_SNAPSHOT, 0, KEYEVENTF_EXTENDEDKEY, 0)
            Call keybd_event(VK_SNAPSHOT, 0, KEYEVENTF_EXTENDEDKEY Or KEYEVENTF_KEYUP, 0)
        End If
        DoEvents
        Unload Me
    Sheet2.Visible = xlSheetVisible
        Sheet2.Select
        Range("A1").Select
        ActiveSheet.Paste
        'wks.SaveAs Filename:="D:/myfile.htm", FileFormat:=xlHtml
        'wks.Parent.Close False
        Worksheets("ab").PrintPreview
         Application.ScreenUpdating = True
        Application.DisplayAlerts = True
        Sheet2.Visible = xlSheetHidden
    End Sub
    این کدهایی که با رنگ قرمز نشون دادم رو قرار بدین مشکلتون حل میشه
    رنگ سبز رو هم تو کد قبلی ی سره هست مثل این رنگ جدا کنید
    با سلام و احترام
    بنده توقع برنامه c ندارم ...بنده هم سوال کردم امکانش هست اول تنظیم کرد بعد پرینت گرفت ؟
    چون وقتی کد userform.printform رو قرار میدیم دقیقا از فرم پرینت میگیره ولی عمودی که نصفه هست فقط میخوام افقی باشه کدی هست اضافه بشه کلا بدون اومدن پنجره تنظیمات افقی پرینت بگیره؟

    خروجی پی دی اف رو با پرینت اسکرین حل میکنم
    این که در چه مسیری هستی خیلی مهم تر از این است که با چه سرعتی حرکت میکنی
    سرعت همیشه دلیل خوبی برای موفقیت نیست


  12. #18

    آخرین بازدید
    2019/10/15
    تاریخ عضویت
    July 2018
    نوشته ها
    1
    امتیاز
    10
    سپاس
    0
    سپاس شده
    0 در 0 پست
    تعیین سطح نشده است

    سلام
    یه فرمی در ماکرو دارم . وقتی که براساس یک table ای سرچ می کنم یه سری اطلاعات درون فرم نمایش می دهد. می خواهم از این اطلاعات مطابق با فرم مورد نظر پرینت بگیرم. کد این پرینت گرفتن چیه ؟
    با تشکر

  13. #19


    آخرین بازدید
    2022/06/26
    تاریخ عضویت
    January 2013
    محل سکونت
    شیراز
    نوشته ها
    1,198
    امتیاز
    3248
    سپاس
    1,566
    سپاس شده
    3,182 در 795 پست
    سطح اکسل
    84.00 %

    ba dr00o00d

    code zir ro emtehan konin bebinim kareton hal mishe, vase man ke kar kard, dar zemn excel baza nabinam hay in narm afzaro ba C va .... moghayesash konina behem bar mikhore, to omram yechizaie didam bahash doros kardan ke ba zabanhaye barnamenevisi dige be in asoni nemishe anjamesh dad. dar ayane nazdic ham ehtemalesh hast zabane payton behesh ezafe beshe darzemn khob ama code
    کد:
    
    
    
    
    
    Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, _
        ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)
    Const VK_SNAPSHOT = 44
    Const VK_LMENU = 164
    Const KEYEVENTF_KEYUP = 2
    Const KEYEVENTF_EXTENDEDKEY = 1
    
    Private Sub CommandButton1_Click()
        DoEvents
        keybd_event VK_LMENU, 0, KEYEVENTF_EXTENDEDKEY, 0
        keybd_event VK_SNAPSHOT, 0, KEYEVENTF_EXTENDEDKEY, 0
        keybd_event VK_SNAPSHOT, 0, KEYEVENTF_EXTENDEDKEY + _
            KEYEVENTF_KEYUP, 0
        keybd_event VK_LMENU, 0, KEYEVENTF_EXTENDEDKEY + _
            KEYEVENTF_KEYUP, 0
        DoEvents
        Workbooks.Add
        Application.Wait Now + TimeValue("00:00:01")
        ActiveSheet.PasteSpecial Format:="Bitmap", Link:=False, _
            DisplayAsIcon:=False
        ActiveSheet.Range("A1").Select
        'added to force landscape
        ActiveSheet.PageSetup.Orientation = xlLandscape
        
       
    With ActiveSheet.PageSetup
            .PrintTitleRows = ""
            .PrintTitleColumns = ""
        End With
    
        ActiveSheet.PageSetup.PrintArea = ""
        
        With ActiveSheet.PageSetup
            .LeftHeader = ""
            .CenterHeader = ""
            .RightHeader = ""
            .LeftFooter = ""
            .CenterFooter = ""
            .RightFooter = ""
            .LeftMargin = Application.InchesToPoints(0.75)
            .RightMargin = Application.InchesToPoints(0.75)
            .TopMargin = Application.InchesToPoints(1)
            .BottomMargin = Application.InchesToPoints(1)
            .HeaderMargin = Application.InchesToPoints(0.5)
            .FooterMargin = Application.InchesToPoints(0.5)
            .PrintHeadings = False
            .PrintGridlines = False
            .PrintComments = xlPrintNoComments
            '.PrintQuality = 300
            .CenterHorizontally = True
            .CenterVertically = True
            .Orientation = xlLandscape
            .Draft = False
            .PaperSize = xlPaperA4
            .FirstPageNumber = xlAutomatic
            .Order = xlDownThenOver
            .BlackAndWhite = False
            .Zoom = False
            .FitToPagesWide = 1
            .FitToPagesTall = 1
        End With
        ActiveWindow.SelectedSheets.PrintOut Copies:=1
        ActiveWorkbook.Close False
    End Sub
    ino to formeton copy konin, farz ham bar in ast ke commandbutton1 hamon dokmeie hast ke print form ro baraton anjam mide
    در پناه خداوندگار ایران زمین باشید و پیروز



صفحه 2 از 2 نخستنخست 12

اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

موضوعات مشابه

  1. [حل شده] کپی و چسباندن به صورت برعکس
    توسط ubuntu_m در انجمن سوالات اكسل - Excel Questions
    پاسخ ها: 2
    آخرين نوشته: 2016/09/27, 05:42
  2. [حل شده] چاپ جملات بزرگان بصورت رندوم در رسید چاپی
    توسط ACE در انجمن سوالات پیرامون ويژوال بيسيك - VBA Questions
    پاسخ ها: 3
    آخرين نوشته: 2015/10/13, 20:46
  3. پرسش ایجاد کپی یک شیت به صورت خودکار
    توسط rb_reza در انجمن سوالات اكسل - Excel Questions
    پاسخ ها: 1
    آخرين نوشته: 2015/09/24, 19:50
  4. مشکل کپی اطلاعات یک سطر اکسل در صورت برقراری شرط در شیت دیگر
    توسط goblinup در انجمن سوالات پیرامون ويژوال بيسيك - VBA Questions
    پاسخ ها: 14
    آخرين نوشته: 2014/04/18, 15:25

بازدید کنندگان با جستجو های زیر این صفحه را پیدا کرده اند

خروجی اکسل از بیسیک

دستور پرینت از list box اسکل وی بی

ذخیره اکسل به pdf با vba

خروجی pdf دراکسل vba

مشکل چاپ‌ pdf در اکسس

برنامه VBA برای دستور پرینت در اکسل

vba کد ذخیره فایل اکسل به pdf

تعیین نام پرینتر در vba

کد vba ذخیره اکسل به pdf

دستور پرینت در vba

اکسل به pdf در vba

خروجی گرفتن از vba در اکسل

پرینت با vba

علاقه مندی ها (Bookmarks)

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •  
  • BB code ها فعال هستند
  • شکلک ها فعال هستند
  • کد [IMG] فعال است
  • کد [VIDEO] فعال است
  • کد HTML غیر فعال است