امکان ایجاد یک سطر از تکست باکس یل کامبو باکس در فرم

Collapse
X
 
  • زمان
  • نمایش
حذف همه
new posts
  • علی فاطمی

    • 2014/02/17
    • 523
    • 51.00

    امکان ایجاد یک سطر از تکست باکس یل کامبو باکس در فرم

    با سلام
    مشکل اول من در مورد امکان ایجاد یک ردیف جدید از ابزار مانند تکست باکس و... هستش
    اگر بخوام توضیح واضح تر بدم من تو یه فرم یه سری تکست یا کامبو باکس گذاشتم برای ورود اطلاعات حالا اطلاعاتم می خوام در سطر های مختلف ثبت کنم می خوام همه توی یه صفحه مثل یک شیت باشه البته می خوام یه دکمه بزارم مثلا new record که با زدن این دکمه تکست باکس ها و .... با همون خصوصیات در سطر بعدی برای ثبت اطلاعات قرار داده بشه. سوال اصلا امکانپذیر هست؟
    2- به پیوست یه فایل دارم می خوام اطلاعات رو از شیت به فرم بازیابی کنم مشکل دارم از یه راه آماتوری رفتم که البته جواب نمی ده
    کامبو اول ( نوع فعالیت ) فراخوان رو بزنید و بعد دوره و انتخاب کنید .
    سپاس فراوان از هکه دوستان.
    فایل های پیوست شده
    [FONT=tahoma][SIZE=2][B][COLOR=#800080][SIZE=3]در دنیا فقط یک نفر وجود دارد که باید از او بهتر باشید و آن کسی نیست جز گذشته خودتان[/SIZE] [/COLOR][/B][/SIZE][/FONT]


    [CENTER][SIZE=7][FONT=franklin gothic medium][/FONT] [/SIZE]
    [/CENTER]
  • Nima

    • 2011/07/22
    • 385

    #2
    تو لینک زیر میتونید یک نمونه ساده از انتقال اطلاعات از فرم به شیت رو ببینید:

    مطالب و موضوعات مطرح شده درباره امكانات ويژوال بيسيك در اكسل را در اين قسمت مطرح ميگردد.
    [CENTER][COLOR=#ff0000]************************************[/COLOR]
    No [COLOR=#32CD32][B]LION's [/B][/COLOR]roar ruins my hut, I afraid of [COLOR=#ff0000][B]TERMITE's [/B][/COLOR]silence
    [COLOR=#ff0000]************************************[/COLOR]

    [/CENTER]

    کامنت

    • shamsololama

      • 2010/02/15
      • 940

      #3
      نوشته اصلی توسط علی فاطمی
      با سلام
      مشکل اول من در مورد امکان ایجاد یک ردیف جدید از ابزار مانند تکست باکس و... هستش
      اگر بخوام توضیح واضح تر بدم من تو یه فرم یه سری تکست یا کامبو باکس گذاشتم برای ورود اطلاعات حالا اطلاعاتم می خوام در سطر های مختلف ثبت کنم می خوام همه توی یه صفحه مثل یک شیت باشه البته می خوام یه دکمه بزارم مثلا new record که با زدن این دکمه تکست باکس ها و .... با همون خصوصیات در سطر بعدی برای ثبت اطلاعات قرار داده بشه. سوال اصلا امکانپذیر هست؟
      2- به پیوست یه فایل دارم می خوام اطلاعات رو از شیت به فرم بازیابی کنم مشکل دارم از یه راه آماتوری رفتم که البته جواب نمی ده
      کامبو اول ( نوع فعالیت ) فراخوان رو بزنید و بعد دوره و انتخاب کنید .
      سپاس فراوان از هکه دوستان.

      با درود فراوان
      من فایل نمونه شما رو دیدم با کدهای که در آن نوشته بودید بعید میدونم سئوال شما این باشه که به چه صورت اطلاعات رو از فرم به شیت ها وارد کنیم و همچنین به چه صورت اطلاتی که در شیت هست رو به فرم فرا خوانیم چون چنین کدهای خیلی خوب در فایل نمونه شما نوشته شده بود
      به همین دلیل اگر سئوال خاصی در مورد کد ها دارید با توضیحات در مورد آن بفرمائید یا اینکه اشتباه میکنم ؟
      ---------------------------------------------------------------------------------------------------
      بمانیم تا کاری کنیم ،نه کاری کنیم تا بمانیم [size=x-small](دکتر شریعتی)[/size]
      shamsololama@yahoo.com
      09177733411

      کامنت

      • علی فاطمی

        • 2014/02/17
        • 523
        • 51.00

        #4
        با سلام خدمت استاد ،
        اگر به فایل نمونه دقت کرده باشین اطلاعات از فرم به شیت براحتی منتقل میشه ولی بازیابی خیر فقط دو تا رکورد رو نشون میده و حلقه تا آخر انجام نمیشه ...
        [FONT=tahoma][SIZE=2][B][COLOR=#800080][SIZE=3]در دنیا فقط یک نفر وجود دارد که باید از او بهتر باشید و آن کسی نیست جز گذشته خودتان[/SIZE] [/COLOR][/B][/SIZE][/FONT]


        [CENTER][SIZE=7][FONT=franklin gothic medium][/FONT] [/SIZE]
        [/CENTER]

        کامنت

        • علی فاطمی

          • 2014/02/17
          • 523
          • 51.00

          #5
          با سلام خدمت استاد ،
          اگر به فایل نمونه دقت کرده باشین اطلاعات از فرم به شیت براحتی منتقل میشه ولی بازیابی خیر فقط دو تا رکورد رو نشون میده و حلقه تا آخر انجام نمیشه ، یعنی از شیت به فرم انجام نمیشه.
          استاد در مورد مشکل اصلی من پاسخی ندادین . آیا دستوری جهت ایجاد یا کپی یا ساخت و .... از تکست باکس و یا کامبو باکس هست.یعنی من یه سری تکست باکس و یا کامبو باکس و ... برای ورود اطلاعات دارم حالا می خوام وقتی هر بار اطلاعات رو وارد می کنم ضمن اینکه در شیت قرار داده میشه روی یه فرم هم به همون صورت ( یعنی سطر به سطر ) قرار داده بشه فایل پیوست فرم1 وقتی مشخصه جدید رو می زنی فرم 4 رو میاره و در فرم 4 اطلاعات رو ثبت می کنی و با زدن دکمه ثبت اطلاعات از فزم به شیت منتقل میشه . من می خوام کاربر اصلا به شیت دسترسی نداشته باشه و از طریق فرم یک کلیه سطرها رو بتونه ببینه.
          سوال من اینکه اصلا این راه درستی هست ؟ اصلا امکان پذیر ه؟
          ممنون از توجه شما.
          فایل های پیوست شده
          [FONT=tahoma][SIZE=2][B][COLOR=#800080][SIZE=3]در دنیا فقط یک نفر وجود دارد که باید از او بهتر باشید و آن کسی نیست جز گذشته خودتان[/SIZE] [/COLOR][/B][/SIZE][/FONT]


          [CENTER][SIZE=7][FONT=franklin gothic medium][/FONT] [/SIZE]
          [/CENTER]

          کامنت

          • علی فاطمی

            • 2014/02/17
            • 523
            • 51.00

            #6
            با عرض سلام مجدد..
            من از یه راه آماتوری به یه جاهایی رسیدم لطفا فایل پیوست را بررسی فرمائید.
            بیا سپاس فراوان.
            فایل های پیوست شده
            [FONT=tahoma][SIZE=2][B][COLOR=#800080][SIZE=3]در دنیا فقط یک نفر وجود دارد که باید از او بهتر باشید و آن کسی نیست جز گذشته خودتان[/SIZE] [/COLOR][/B][/SIZE][/FONT]


            [CENTER][SIZE=7][FONT=franklin gothic medium][/FONT] [/SIZE]
            [/CENTER]

            کامنت

            • shamsololama

              • 2010/02/15
              • 940

              #7
              نوشته اصلی توسط علی فاطمی
              با عرض سلام مجدد..
              من از یه راه آماتوری به یه جاهایی رسیدم لطفا فایل پیوست را بررسی فرمائید.
              بیا سپاس فراوان.
              با درود فراوان

              برای اینکه تمام مطالب وارد شده تو شیت رو داخل فرم ببینی یه راه ساده اینه که از لیست باکس استفاده کنید که فکر میکنم جواب کار شما رو بده هرچند میشه تمام خود آن شیت رو هم بصورت همان فرمت شیت اکسل توس فرم قرار داد که فکر میکنم در این نمونه نیازی نیست

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

              در مورد فرا خوانی هم دقیقا شبیه ورود اطلاعات هست با این تفاوت که دو طرف مساوی رو با هم عوض می کنیم و شرط که برابر با خالی رو بجای خالی مآیتم مورد نظر رو قرار می دهیم یعنی مثلا قرار میدیم برابر با شه با مثلا تکست باکس یک که تکس باکس یک موردی هست که میخواهیم فراخوانی کنیم

              نمونه فایل قرار دادم
              فایل های پیوست شده
              ---------------------------------------------------------------------------------------------------
              بمانیم تا کاری کنیم ،نه کاری کنیم تا بمانیم [size=x-small](دکتر شریعتی)[/size]
              shamsololama@yahoo.com
              09177733411

              کامنت

              • علی فاطمی

                • 2014/02/17
                • 523
                • 51.00

                #8
                با سلام و سپاس از توجه شما
                همون طور که خودتون اشاره کردین من دقیقا می خوام به صورت سطر باشه حالت لیست باکس بسیار عالی بود ولی اینجا بکار من نمیاد چون در هر سطر بعضی از سلول ها ممکن است نیاز به ویرایش داشته باشند یعنی عملا باید از هم جدا باشن. اگر فایل پیوست ملاحظه کنین متوجه عرض من خواهید شد.
                در مورد فراخوانی اگر ممکن همون پیوست اول رو اصلاح بفرمائید چرا که من می خوام این کار با زدن spinup انجام بشه ولی عملا نمی شه.
                با سپاس فراوان
                فایل های پیوست شده
                [FONT=tahoma][SIZE=2][B][COLOR=#800080][SIZE=3]در دنیا فقط یک نفر وجود دارد که باید از او بهتر باشید و آن کسی نیست جز گذشته خودتان[/SIZE] [/COLOR][/B][/SIZE][/FONT]


                [CENTER][SIZE=7][FONT=franklin gothic medium][/FONT] [/SIZE]
                [/CENTER]

                کامنت

                • shamsololama

                  • 2010/02/15
                  • 940

                  #9
                  با درود فراوان

                  اینکه می فرمائید لیست باکس به کار شما نمیاد اگر دلیلش همون باشه بعضی از سطرها رو می خواین ویرایش کنید که تو همون لیست باکس هم میشه با کلیک رو ی هر سطر از لیست باکس همون رو ویرایش کنید یعنی به همون صورتی که از تکست باکس ویرایش میشه یعنی به این ترتیب که وقتی روی هر سطر از لیست باکس که انتخاب میکنید اطلاعات آن در تکست باکسهای مربوطه قرار میگیره برای ویرایش و میشه ویرایش کنید

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


                  Private Sub SpinButton2_Change()
                  Dim n
                  n = SpinButton2.Value
                  If Sheets(ComboBox2.Value).Range("A1").Offset(n - 1, 0).Value <> "" Then
                  TextBox5.Text = Sheets(ComboBox2.Value).Range("A1").Offset(n - 1, 0).Value
                  TextBox1.Text = Sheets(ComboBox2.Value).Range("A1").Offset(n - 1, 1).Value
                  TextBox2.Text = Sheets(ComboBox2.Value).Range("A1").Offset(n - 1, 2).Value
                  End If
                  End Sub
                  فایل های پیوست شده
                  ---------------------------------------------------------------------------------------------------
                  بمانیم تا کاری کنیم ،نه کاری کنیم تا بمانیم [size=x-small](دکتر شریعتی)[/size]
                  shamsololama@yahoo.com
                  09177733411

                  کامنت

                  • علی فاطمی

                    • 2014/02/17
                    • 523
                    • 51.00

                    #10
                    با سلام و تشکر فراوان از توجه شما ،
                    استاد منظورم این نبود که از لیست نمیشه استفاده کرد بلکه به دلیل نوع ساختار فرم بهتره که به صورت جدول باشه ، و بعد اینکه با انتخاب هر سطر می شه دوباره به تکست برگشت رو من متوجه نشدم از چه دستوری امکان پذیره؟ اگر ممکنه یک نمونه از کد رو روی یک از پیوست های بالا قرار بدین بسیار سپاس گذارم.
                    [FONT=tahoma][SIZE=2][B][COLOR=#800080][SIZE=3]در دنیا فقط یک نفر وجود دارد که باید از او بهتر باشید و آن کسی نیست جز گذشته خودتان[/SIZE] [/COLOR][/B][/SIZE][/FONT]


                    [CENTER][SIZE=7][FONT=franklin gothic medium][/FONT] [/SIZE]
                    [/CENTER]

                    کامنت

                    • علی فاطمی

                      • 2014/02/17
                      • 523
                      • 51.00

                      #11
                      با سلام استاد شمس،
                      همونطور که قبلا عرض کردم فرمت لیست باکس مشکلات زیادی برای اجرای برنامه به همراه میاره ، من یه راه آماتوری با تکست باکس دارم ولی خیلی پر دردسره ، من فقط می خوام بدونم اگر راه حلی وجود نداره ، همون راه پردردسر رو شروع کنم ممنون.
                      [FONT=tahoma][SIZE=2][B][COLOR=#800080][SIZE=3]در دنیا فقط یک نفر وجود دارد که باید از او بهتر باشید و آن کسی نیست جز گذشته خودتان[/SIZE] [/COLOR][/B][/SIZE][/FONT]


                      [CENTER][SIZE=7][FONT=franklin gothic medium][/FONT] [/SIZE]
                      [/CENTER]

                      کامنت

                      • علی فاطمی

                        • 2014/02/17
                        • 523
                        • 51.00

                        #12
                        سلام به همه دوستان به خصوص استاد شمس ،
                        جواب سوال من داده نشد !!!!!!!! بالاخره میشه با زدن یه کامن باتن توی یه یوزرفرم، تو یه یوزرفرم دیگه یه سری تکست باکس به صورت سطری ایجاد کرد و با استفاده از حلقه در دفعات بعدی با زدن کامن باتن مجددا یک سطر دیگر ایجاد بشه ولی کاملا مرتب و زیر سطر قبلی و مثلا تا 100 مرتبه تکرار بشه ؟
                        فقط می خوام بدونم امکان پذیر هست یا نه؟
                        ممنون از توجه شما؟
                        [FONT=tahoma][SIZE=2][B][COLOR=#800080][SIZE=3]در دنیا فقط یک نفر وجود دارد که باید از او بهتر باشید و آن کسی نیست جز گذشته خودتان[/SIZE] [/COLOR][/B][/SIZE][/FONT]


                        [CENTER][SIZE=7][FONT=franklin gothic medium][/FONT] [/SIZE]
                        [/CENTER]

                        کامنت

                        • shamsololama

                          • 2010/02/15
                          • 940

                          #13
                          نوشته اصلی توسط علی فاطمی
                          با سلام و تشکر فراوان از توجه شما ،
                          استاد منظورم این نبود که از لیست نمیشه استفاده کرد بلکه به دلیل نوع ساختار فرم بهتره که به صورت جدول باشه ، و بعد اینکه با انتخاب هر سطر می شه دوباره به تکست برگشت رو من متوجه نشدم از چه دستوری امکان پذیره؟ اگر ممکنه یک نمونه از کد رو روی یک از پیوست های بالا قرار بدین بسیار سپاس گذارم.


                          با درود فراوان

                          کدی که با کلیک رو لیست باکس اطلاعات رو در تکست باکسها نمایش دهد ضمیمه کردم خدمت شما
                          در مورد اینکه می فرمائید "به دلیل نوع ساختار فرم بهتره که به صورت جدول باشه" پس در این صورت هم بهتره که تو فرم از صفحه خود اکسل استفاده کنید
                          فایل های پیوست شده
                          ---------------------------------------------------------------------------------------------------
                          بمانیم تا کاری کنیم ،نه کاری کنیم تا بمانیم [size=x-small](دکتر شریعتی)[/size]
                          shamsololama@yahoo.com
                          09177733411

                          کامنت

                          • امين اسماعيلي
                            مدير تالار ويژوال بيسيك

                            • 2013/01/17
                            • 1198
                            • 84.00

                            #14
                            با در
                            ممنون از استاد شمس عزیز . فقط جهت اطلاع دوست عزیز
                            تو کد های استاد شمس یه جایی باید جای Combobox7 , textbox1 عوض بشه در یوزرفرم 4 گفتم شاید موضوع گنگ باشه برای دوستمون .

                            کد:
                            c = TextBox1.Text
                            c.Offset(0, 1) = ComboBox4.Text
                            c.Offset(0, 2) = ComboBox7.Text
                            درست شده اون بخش هم تو کد اینجوری اید باشه جای ردیف سهوا جابجا شده بود
                            در پناه خداوندگار ایران زمین باشید و پیروز

                            کامنت

                            • علی فاطمی

                              • 2014/02/17
                              • 523
                              • 51.00

                              #15
                              استاد سلام و تشکر از توجه و زحمات شما ،
                              مشکل من اینه که از لیست باکس نمی تونم استفاده کنم چرا که 10 تکست باکس در یک سطر در کنار هم دارم که دست بر قضا فقط 4 تا شون از نظر سایز محتوا ممکنه با هم یکی باشن ولی محتواب بقیه به صورت متنی و سایز های مختلفی دارند . من واقعا از شما ممنونم ولی بایستی 100 سطر ( ردیف) که در هر سطر 10 تا تکست باکس وجود داره داشته باشم که البته با توجه به اینکه برای هر محصول ممکنه تعداد سطرها فرق کنه ، سطرها پس از تکمیل هر سطر در یک یوزرفرم دیگر و زدن کلید ثبت نهایی یک سطر در صفحه اصلی اضافه بشه و مجتویات ثبت در یوزرفرم دیگر در صفحه اصلی نمایان بشه . 100 عدد نهایی که من برای برنامه تعریف می کنم ولی ممکنه یه محصول 20 تا یا یه محصول 50 تا آیتم داشته باشه بخاطر همین من می خوام سطرها از ساختنیه پس از ثبت نهایی ساخته بشه اگر هم بخوام از راه من درآوردی خودن برم باید 100 تا ردیف 10 تایی بسازم ( 1000 تا تکست باکس : خدایا چه شود ) و همشون رو پنهان کنم و با زدن کلید ثبت نهایی ضمن ظاهر کردن اون ها محتویاتشون رو هم در هر تکست قرار بدم .
                              خواهش آخر من :
                              اگر واقعا تکست باکس ها قابل ساختن هستن ( البته از طریق کدنویسی ) به طوری که مثل یک جدول در هر سطر کنار هم و در سطرهای مختلف زیر یکدیگر ، بنده رو راهنمایی کنین . اگر هم امکان نداره که کمر همت رو ببندم و شروع به اختن 1000 تا تکست باکس کنم.
                              بازم ممنون از توجه شما.
                              [FONT=tahoma][SIZE=2][B][COLOR=#800080][SIZE=3]در دنیا فقط یک نفر وجود دارد که باید از او بهتر باشید و آن کسی نیست جز گذشته خودتان[/SIZE] [/COLOR][/B][/SIZE][/FONT]


                              [CENTER][SIZE=7][FONT=franklin gothic medium][/FONT] [/SIZE]
                              [/CENTER]

                              کامنت

                              چند لحظه..