چک باکس

Collapse
این تاپیک قفل است.
X
X
 
  • زمان
  • نمایش
حذف همه
new posts

  • iranweld
    پاسخ داد
    نوشته اصلی توسط Meysam6335
    سلام
    استاد در کد شما
    کد:
    For i = 3 To 12
    فقط سطون e تیک میخوره و ستون f تیک نمیخوره
    [ATTACH=CONFIG]22345[/ATTACH]
    بقیه کدها رو باید تکمیل میگردید.

    در این کدها بعد از کد چک باکس 3 تا چک باکس 20 کدها رو کامل کنید.

    کد PHP:
    Private Sub UserForm_Initialize()

    For 
    i = 3 To 12
    Select 
    Case Range("c" & i)

    Case 
    "ماوس"
    Me.Controls("CheckBox1") = True
    Case "کيبرد"
    Me.Controls("CheckBox2") = True

    Case "کيس"
    Me.Controls("CheckBox3") = True


    …
    ..
    Me.Controls("CheckBox20") = True


    End Select
    Next


    For i = 3 To 12
    Select 
    Case Range("f" & i)

    Case 
    "ماوس"
    Me.Controls("CheckBox1") = True
    Case "کيبرد"
    Me.Controls("CheckBox2") = True

    Case "کيس"
    Me.Controls("CheckBox3") = True

    …
    ..
    Me.Controls("CheckBox20") = True


    End Select
    Next

    End Sub 

    Leave a comment:


  • میثم مقدم نیا
    پاسخ داد
    نوشته اصلی توسط Meysam6335
    سلام
    استاد در کد شما
    کد:
    For i = 3 To 12
    فقط سطون e تیک میخوره و ستون f تیک نمیخوره
    [ATTACH=CONFIG]22345[/ATTACH]

    سلام
    شما کد زیر را جایگزین کنید مشکل حل میشود

    کد PHP:
    Private Sub UserForm_Initialize()

    For 
    i = 3 To 12

    Select 
    Case Range("c" & i)

    Case 
    "ماوس"
    Me.Controls("CheckBox1") = True
    Case "کيبرد"
    Me.Controls("CheckBox2") = True

    Case "کيس"
    Me.Controls("CheckBox3") = True
    Case "رم"
    Me.Controls("CheckBox4") = True

    Case "کارت گرافيگ"
    Me.Controls("CheckBox5") = True
    Case "اسپيکر"
    Me.Controls("CheckBox6") = True

    Case "مانيتور"
    Me.Controls("CheckBox7") = True
    Case "هارد"
    Me.Controls("CheckBox8") = True

    End Select

    Next

    For i = 3 To 12

    Select 
    Case Range("f" & i)

    Case 
    "ماوس"
    Me.Controls("CheckBox1") = True
    Case "کيبرد"
    Me.Controls("CheckBox2") = True

    Case "کيس"
    Me.Controls("CheckBox3") = True
    Case "رم"
    Me.Controls("CheckBox4") = True

    Case "کارت گرافيگ"
    Me.Controls("CheckBox5") = Tru
    eCase 
    "اسپيکر"
    Me.Controls("CheckBox6") = True

    Case "مانيتور"
    Me.Controls("CheckBox7") = True
    Case "هارد"
    Me.Controls("CheckBox8") = True

    End Select

    Next

    End Sub 
    Last edited by میثم مقدم نیا; 2021/02/15, 11:42.

    Leave a comment:


  • Meysam6335
    پاسخ داد
    نوشته اصلی توسط iranweld
    مثل نمونه کدهای ذیل تکمیل کنید.

    کد PHP:
    Private Sub UserForm_Initialize()
    For 
    i = 3 To 12
    Select 
    Case Range("c" & i)
    Case 
    "ماوس"
    Me.Controls("CheckBox1") = True
    Case "کيبرد"
    Me.Controls("CheckBox2") = True

    Case "کيس"
    Me.Controls("CheckBox3") = True
    Case "رم"
    Me.Controls("CheckBox4") = True

    Case "کارت گرافيگ"
    Me.Controls("CheckBox5") = True
    Case "اسپيکر"
    Me.Controls("CheckBox6") = True

    Case "مانيتور"
    Me.Controls("CheckBox7") = True
    Case "هارد"
    Me.Controls("CheckBox8") = True



    End Select
    Next

    End Sub 
    سلام
    استاد در کد شما
    کد:
    For i = 3 To 12
    فقط سطون e تیک میخوره و ستون f تیک نمیخوره
    Click image for larger version

Name:	Untitled05.png
Views:	1
Size:	43.6 کیلو بایت
ID:	138593

    Leave a comment:


  • iranweld
    پاسخ داد
    نوشته اصلی توسط Meysam6335
    سلام
    در این بخش من از این طرح یه نمونه برداشتم و برام یه سوال پیش اومده که اگه بخوایم این یوزر فرم را دفعات بعد بازکنیم اون مواردی را که قبلا تیک زدیم مثل اپشن باتون ها تو فرم هم تیک بخوره چطور امکان پذیر هست

    نوشته اصلی توسط Meysam6335
    سلام
    در این بخش من از این طرح یه نمونه برداشتم و برام یه سوال پیش اومده که اگه بخوایم این یوزر فرم را دفعات بعد بازکنیم اون مواردی را که قبلا تیک زدیم مثل اپشن باتون ها تو فرم هم تیک بخوره چطور امکان پذیر هست
    مثل نمونه کدهای ذیل تکمیل کنید.

    کد PHP:
    Private Sub UserForm_Initialize()
    For 
    i = 3 To 12
    Select 
    Case Range("c" & i)
    Case 
    "ماوس"
    Me.Controls("CheckBox1") = True
    Case "کيبرد"
    Me.Controls("CheckBox2") = True

    Case "کيس"
    Me.Controls("CheckBox3") = True
    Case "رم"
    Me.Controls("CheckBox4") = True

    Case "کارت گرافيگ"
    Me.Controls("CheckBox5") = True
    Case "اسپيکر"
    Me.Controls("CheckBox6") = True

    Case "مانيتور"
    Me.Controls("CheckBox7") = True
    Case "هارد"
    Me.Controls("CheckBox8") = True



    End Select
    Next

    End Sub 

    Leave a comment:


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

    Leave a comment:


  • میثم مقدم نیا
    پاسخ داد
    نوشته اصلی توسط میثم مقدم نیا

    با سلام مجدد
    استاد عالی بود ولی مشکل حذف شدن فرمول در ستون e حل نشد

    [ATTACH=CONFIG]22336[/ATTACH]

    بازم از زحمات شما اساتید عزیزم سپاس گذارم
    با تغییر کوچیک در کد شما این مشکل حل شد


    کد PHP:
    Private Sub CommandButton1_Click()

    Dim list1 As New Collection

    Set list1 
    = Nothing

    Range
    ("c3:c12").ClearContents
    Range
    ("f3:f12").ClearContents

    For i = 1 To 20

            
    If Me.Controls("CheckBox" & i) = True Then
            list1
    .Add Me.Controls("CheckBox" & i).Caption
            
            End 
    If

            
    Next

         
    If list1.Count > 0 Then
            
    For i = 1 To list1.Count
            
    If i <= 10 Then
            Range
    ("c" & i + 2) = list1.Item(i)

            Else

            
    Range("f" & i + 2 - 10) = list1.Item(i)

            
    End If

            
    Next

            MsgBox 
    "اطلاعات با موفقيت ثبت شد", vbMsgBoxRight, "ثبت اطلاعات"

            
    End If

    End Sub 
    Last edited by میثم مقدم نیا; 2021/02/12, 00:39.

    Leave a comment:


  • میثم مقدم نیا
    پاسخ داد
    نوشته اصلی توسط iranweld
    چند تا کد آخر رو برای شما گذاشتیم که اصلاح کنید.

    کد HTML:
    private sub commandbutton1_click()
    
    dim list1 as new collection
    set list1 = nothing
    range("c3:c12", "f3:f12").clearcontents
    for i = 1 to 20                if me.controls("checkbox" & i) = true then        list1.add me.controls("checkbox" & i).caption        end if                next
         if list1.count > 0 then        for i = 1 to list1.count        if i <= 10 then        range("c" & i + 2) = list1.item(i)                else                range("f" & i + 2 - 10) = list1.item(i)        end if                next                 msgbox "çøáçúçê èç ãæýþíê ëèê ôï", vbmsgboxright, "ëèê çøáçúçê"
    
                    end if                       end sub

    با سلام مجدد
    استاد عالی بود ولی مشکل حذف شدن فرمول در ستون
    e حل نشد

    [ATTACH=CONFIG]22336[/ATTACH]

    بازم از زحمات شما اساتید عزیزم سپاس گذارم
    فایل های پیوست شده

    Leave a comment:


  • majid_mx4
    پاسخ داد
    با سلام

    دستورات زیر برگرفته از کد های جناب آقای IranWeld عزیز نوشته شده هر چند ایشان پاسخ مناسب را داده ، لطفا کد ها را چک کنید که جواب دلخواه را می دهد یانه .
    کد:
    Private Sub CommandButton1_Click()
    k = 3
    k2 = 3
    
    Range("b3:c12", "e3:f12").ClearContents
      For Each ctl2 In Me.Controls
    If TypeOf ctl2 Is MSForms.CheckBox Then
    If Me.Controls(ctl2.Name).Value = True = True And k <= 12 Then
            Sheets("Sheet1").Cells(k, 3).Value = Me.Controls(ctl2.Name).Caption
                   
            k = k + 1
            
            ElseIf Me.Controls(ctl2.Name).Value = True Then
            Sheets("Sheet1").Cells(k2, 6).Value = Me.Controls(ctl2.Name).Caption
            k2 = k2 + 1
            End If
            End If
    Next
    
            MsgBox "ÇØáÇÚÇÊ ÈÇ ãæÝÞíÊ ËÈÊ ÔÏ", vbMsgBoxRight, "ËÈÊ ÇØáÇÚÇÊ"
    
    End Sub
    موفق باشید میر

    Leave a comment:


  • iranweld
    پاسخ داد
    چند تا کد آخر رو برای شما گذاشتیم که اصلاح کنید.

    کد HTML:
    Private Sub CommandButton1_Click()
    
    Dim list1 As New Collection
    Set list1 = Nothing
    Range("c3:c12", "f3:f12").ClearContents
    For i = 1 To 20                If Me.Controls("CheckBox" & i) = True Then        list1.Add Me.Controls("CheckBox" & i).Caption        End If                Next
         If list1.Count > 0 Then        For i = 1 To list1.Count        If i <= 10 Then        Range("c" & i + 2) = list1.Item(i)                Else                Range("f" & i + 2 - 10) = list1.Item(i)        End If                Next                 MsgBox "ÇØáÇÚÇÊ ÈÇ ãæÝÞíÊ ËÈÊ ÔÏ", vbMsgBoxRight, "ËÈÊ ÇØáÇÚÇÊ"
    
                    End If                       End Sub
    فایل های پیوست شده

    Leave a comment:


  • میثم مقدم نیا
    پاسخ داد
    نوشته اصلی توسط iranweld
    با سلام

    فایل پیوست را بررسی کنید.

    [ATTACH=CONFIG]22327[/ATTACH]
    با سلام خدمت استاد عزیزم
    یه مشکل کوچک تو این دستور هست که تو عکس زیر نگاه کنید متوجه میشد
    یکی اینکه اعداد ردیف دوم حذف میشه و دو اینکه بعضی از کزینه ها پشت سر هم قرار نمیگرند
    کدهای ستون B و E هم با دستور vlookup فراخوانی میشوند

    Click image for larger version

Name:	Untitled2.png
Views:	1
Size:	34.5 کیلو بایت
ID:	138582



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

    Leave a comment:


  • iranweld
    پاسخ داد
    با سلام

    فایل پیوست را بررسی کنید.

    Click image for larger version

Name:	Untitled.png
Views:	1
Size:	86.3 کیلو بایت
ID:	138580
    فایل های پیوست شده

    Leave a comment:


  • میثم مقدم نیا
    یک موضوع ایجاد کرد [حل شده] چک باکس

    چک باکس

    سلام

    یه سوال

    من تو یک فایل میخوام اقلام را با تیک کردن در یوزرفرم وارد جدول کنم مثل تصویر زیر

    Click image for larger version

Name:	Untitled.png
Views:	1
Size:	32.1 کیلو بایت
ID:	149207

    حال میخوام بجای فاصله خالی این اقلام پشت سر هم قرار بگیرند

    لطفا راهنمایم کنید
    فایل های پیوست شده
چند لحظه..