نمایش نتایج: از شماره 1 تا 6 , از مجموع 6

موضوع: دستوري كه معادل اجراي يك كنترل است

Hybrid View

پست قبلی پست قبلی   پست بعدی پست بعدی
  1. #1


    آخرین بازدید
    2022/08/30
    تاریخ عضویت
    September 2011
    محل سکونت
    استان فارس - فراشبند
    نوشته ها
    159
    امتیاز
    38
    سپاس
    55
    سپاس شده
    33 در 24 پست
    سطح اکسل
    45.00 %

    دستوري كه معادل اجراي يك كنترل است

    سلام :
    با عرض ادب حضور اساتيد محترم يك سوال دارم

    در vba با چه دستوري ميتوانم كدهاي درون يك رويداد مثلاً CommandButton1_Click() را اجرا كنم منظورم اينست كه ايا كدي وجود دارد كه معادل فشردن كليد CommandButton1_Click() باشد چون قراراست در مواقع مختلف اين رويداد اجرا شود نميخواهم هر بار كدهاي طولاني آن را تكرار كنم - اگر سوالم واضح نيست بگيد تا بيشتر توضيح بدم
    اخطار: این یک موضوع قدیمی است
    به دلیل قدیمی بودن موضوع، ممکن است برخی فایل های ضمیمه به درستی کار نکنند. لطفا در صورت عدم ضرورت، از بالا آوردن موضوعات قدیمی خودداری نمایید.

  2. #2


    آخرین بازدید
    2022/06/28
    تاریخ عضویت
    May 2010
    محل سکونت
    بلژیک
    نوشته ها
    174
    امتیاز
    108
    سپاس
    0
    سپاس شده
    119 در 53 پست
    تعیین سطح نشده است

    RE: دستوري كه معادل اجراي يك كنترل است

    این کد رو ببینید.

    از یک سایت پیداش کردم: (خودم ننوشتم اما امتحان کردم خیلی خوب جواب میداد. تست شده است).

    برای ایجاد داینامیک یک باتن در یک شیت هستش.
    با کمی تغییر میتونید چند پارامتر بهش اضافه کنید و تعداد نا محدودی باتن رو از این طریق تولید کنید. مخصوصا که فرامینشون یکی است.
    کد:
    Sub CreateControlButton()
    '-----------------------------------------------------------------
    Dim oWs As Worksheet
    Dim oOLE As OLEObject
    
    Set oWs = ActiveSheet
    
    Set oOLE = ActiveSheet.OLEObjects.Add(ClassType:="Forms.CommandButton.1", _
    Left:=200, Top:=100, Width:=80, Height:=32)
    
    With oOLE
    .Object.Caption = "Run myMacro"
    .Name = "myMacro"
    End With
    
    With ThisWorkbook.VBProject.VBComponents(oWs.CodeName).CodeModule
    .InsertLines .CreateEventProc("Click", oOLE.Name) + 1, _
    vbTab & "If Range(""A1"").Value > 0 Then " & vbCrLf & _
    vbTab & vbTab & "Msgbox ""Hi""" & vbCrLf & _
    vbTab & "End If"
    
    End With
    
    End Sub
    '-----------------------------------------------------------------
    Sub CreateCombobox()
    '-----------------------------------------------------------------
    Dim oWs As Worksheet
    Dim oOLE As OLEObject
    
    Set oWs = ActiveSheet
    
    Set oOLE = ActiveSheet.OLEObjects.Add(ClassType:="Forms.Combobox.1", _
    Left:=200, Top:=100, Width:=80, Height:=32)
    
    
    oOLE.ListFillRange = "A1:A10"
    
    End Sub
    [size=large]البته نکته ای که باید توجه کنیدو حتما
    OPTION-> TRUST CENTER ->tRUST CENTER SETTING-> TRUST ACCESS TO THE VBA PROJECT OBJECT MODEL رو فعال کنید.
    [/size]

    امید وارم درست متوجه شده باشم منظور شمارو.

    موفق و پیروز باشید.



  3. #3


    آخرین بازدید
    2022/08/30
    تاریخ عضویت
    September 2011
    محل سکونت
    استان فارس - فراشبند
    نوشته ها
    159
    امتیاز
    38
    سپاس
    55
    سپاس شده
    33 در 24 پست
    سطح اکسل
    45.00 %

    RE: دستوري كه معادل اجراي يك كنترل است

    با تشكر
    منظورم توليد كنترل هاي مشابه نيست بلكه صدا زدن كدهاي موجود يك كنترل در مواقع مورد نياز است مثل run كردن يك ماكرو منتهي ميخواهم يك كنترل را run كنم

  4. #4


    آخرین بازدید
    2022/06/28
    تاریخ عضویت
    May 2010
    محل سکونت
    بلژیک
    نوشته ها
    174
    امتیاز
    108
    سپاس
    0
    سپاس شده
    119 در 53 پست
    تعیین سطح نشده است

    RE: دستوري كه معادل اجراي يك كنترل است

    سلام
    من دقیقا متوجه نشدم.....
    شما اگر CommandButton1_Click() را فراخوانی کنید. همین اتفاق می افتد

    مثلا

    sub a()
    CommandButton1_Click
    end sub


  5. #5


    آخرین بازدید
    2022/08/30
    تاریخ عضویت
    September 2011
    محل سکونت
    استان فارس - فراشبند
    نوشته ها
    159
    امتیاز
    38
    سپاس
    55
    سپاس شده
    33 در 24 پست
    سطح اکسل
    45.00 %

    RE: دستوري كه معادل اجراي يك كنترل است

    نقل قول نوشته اصلی توسط m_d6712
    سلام
    من دقیقا متوجه نشدم.....
    شما اگر CommandButton1_Click() را فراخوانی کنید. همین اتفاق می افتد

    مثلا

    sub a()
    CommandButton1_Click
    end sub

    سلام :
    يك فايل براي نمونه گذاشتم لطفاً به كدهاي فرم tarix نگاه كنيد مي بينيد كه حدود 30 تا كد مشابه وجود دارد منظورم يكي كردن اين كدهاست
    http://uplod.ir/7pbdapuaep1y/sample91.xlsm.htm

  6. #6


    آخرین بازدید
    2022/12/26
    تاریخ عضویت
    November 2010
    محل سکونت
    کرج
    نوشته ها
    362
    امتیاز
    295
    سپاس
    193
    سپاس شده
    596 در 151 پست
    تعیین سطح نشده است

    MEYTI به Yahoo ارسال پیام

    RE: دستوري كه معادل اجراي يك كنترل است

    سلام دوست عزیز من متوجه منظورتون شدم ولی بعید میدونم بشه ولی فایلتونو میشه به صورت زیر هم خلاصه کرد
    فایل


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

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

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

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

  1. دستور حلقه جهت پاک کردن سلول
    توسط khorasan66 در انجمن سوالات پیرامون ويژوال بيسيك - VBA Questions
    پاسخ ها: 9
    آخرين نوشته: 2013/12/18, 20:52
  2. درخواست راهنمایی برای دستور IF
    توسط somy.s در انجمن توابع اکسل - Excel Functions
    پاسخ ها: 5
    آخرين نوشته: 2013/06/23, 11:01
  3. ساختار صحیح دستورات شرطی در vb
    توسط امیر رضا دهقان در انجمن سوالات پیرامون ويژوال بيسيك - VBA Questions
    پاسخ ها: 1
    آخرين نوشته: 2013/01/05, 09:40
  4. حذف ردیف با دستور
    توسط khorasan66 در انجمن سوالات پیرامون ويژوال بيسيك - VBA Questions
    پاسخ ها: 4
    آخرين نوشته: 2013/01/03, 16:39
  5. آموزش : چگونو به راست كليك در اكسل منويي اضافه كنيم
    توسط mshahin در انجمن سوالات پیرامون ويژوال بيسيك - VBA Questions
    پاسخ ها: 0
    آخرين نوشته: 2012/07/17, 10:07

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

انجمن اكسل ايران , اكسل , اكسس , سوال و جواب اكسل , سوال اكسس , انجمن اكسل ايران , توابع اكسل, آموزش اكسل, آموزش اكسس, VBA, ويژوال بيسيك

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

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

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