سوال درباره ی فعال کردن یک سلول خاص با کلیک بر دکمه های مربوط به سطر و ستون آن

Collapse
X
 
  • زمان
  • نمایش
حذف همه
new posts
  • behnaaam

    • 2010/12/03
    • 5

    سوال درباره ی فعال کردن یک سلول خاص با کلیک بر دکمه های مربوط به سطر و ستون آن

    با سلام به دوستان،
    برای ساخت یک فرم خاص باید اعداد زیادی را در یک شیت اکسل وارد کنم،آیا روشی وجود دارد که بتوان با کلیک بر روی دکمه های بالا و گوشه سمت چپ شیت.مکان نما را به سلول محل تقاطع آنها انتقال بدهد؟
    مثلا با کلیک روی سر ستون M و سطر 200 مکان نما به سلول M200 منتقل شود یا کادری ظاهر شود که مقدار ورودی برای سلول M200 را از من بپرسد؟
    از پاسختون پیشاپیش ممنونم.
  • shamsololama

    • 2010/02/15
    • 940

    #2
    RE: سوال درباره ی فعال کردن یک سلول خاص با کلیک بر دکمه های مربوط به سطر و ستون آن

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

    برای اینکه به سلولی خاص مثلا m200 برویم این قابلیت در خود اکسل وجود دارد و کافیست در کارد Namebox خانه کوچکی روبروی فرومول بار( که وقتی روی هر سل کلیک می کنیم نام سلول را نشان میدهد) با نوشتن نام هر سلول و زدن اینتر به سلول مورد نظر میرود مثلا اگر در آن بنویسید M200 و اینتر را بفشارید به سلول M200 خواهید رفت
    و اینکه با نوشتن نام سلول کاری باز شود و مقدار ورودی را از شما بخواهد اگر منظور شما این است که برای نوشتن چیزی در یک سل کادری باز شود و هرچیزی که بنویسیم در سلول مورد نظر وارد شود بله اینکار شدنی است و کافیست که از دو اینپود باکس استفاده کنی که اولی مقداری را که می خوای وارد سلول کنی از شما بپرسد و دومی سلولی که مد نظر شماست را بپرسد و یا اینکه از Userform استفاده کنید
    ---------------------------------------------------------------------------------------------------
    بمانیم تا کاری کنیم ،نه کاری کنیم تا بمانیم [size=x-small](دکتر شریعتی)[/size]
    shamsololama@yahoo.com
    09177733411

    کامنت

    • behnaaam

      • 2010/12/03
      • 5

      #3
      RE: سوال درباره ی فعال کردن یک سلول خاص با کلیک بر دکمه های مربوط به سطر و ستون آن

      ممنونم از پاسختون.
      ابگذارید سئوالم رو به شکل دیگه ای مطرح کنم.باید با کلیک روی سلول اول سطر و بعد اول ستون سلول مربوط یه آن سطر/ستون خاص انتخاب بشه.یعنی به فرض با کلیک روی سلول c1 و بعد a10 سلول c10 انتخاب بشه.
      متشکرم.

      کامنت

      • shamsololama

        • 2010/02/15
        • 940

        #4
        RE: سوال درباره ی فعال کردن یک سلول خاص با کلیک بر دکمه های مربوط به سطر و ستون آن

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

        چون نمی دانستم این را در چه برنامه ای و به چه منظوری نیاز دارید یک نمونه فایل را در ضمیمه گذاشته ام که امیدوارم همان چیزی باشد که مد نظر شماست

        در این فایل وقتی اول ستون را انتخاب کنی و بعد سطر تقاطع این دو را یافته و انتخاب میکند


        فایل ضمیمه:

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

        کامنت

        • behnaaam

          • 2010/12/03
          • 5

          #5
          RE: سوال درباره ی فعال کردن یک سلول خاص با کلیک بر دکمه های مربوط به سطر و ستون آن

          یک دنیا ممنونم.شما هم کار منو راه انداختید هم باعث شدید بطور جدی بدنبال یادگیری VBA در اگسل بیفتم.
          باز هم ممنون.
          ای کاش درباره ی کدش هم توضیح اندکی میدادید.
          [align=left][align=left]
          کد:
          Private Sub Worksheet_SelectionChange(ByVal Target As Range)
          If Range("it65500") <> "" And Range("it65501") <> "" Then
          
          Range("it65500") = ""
          Range("it65501") = ""
          
          Range("it65500") = Application.Selection.Column
          
          ElseIf Range("it65500") = "" Then
          Range("it65500") = Application.Selection.Column
          
          ElseIf Range("it65500") <> "" Then
          Range("it65501") = Application.Selection.Row
          
          Cells(Range("it65501"), Range("it65500")).Select
          Range("it65500") = ""
          Range("it65501") = ""
          Else
          Cells(Range("it65501"), Range("it65500")).Select
          Range("it65500") = ""
          Range("it65501") = ""
          End If
          End Sub
          [/align][/align][hr]
          یک دنیا ممنونم.شما هم کار منو راه انداختید هم باعث شدید بطور جدی بدنبال یادگیری VBA در اکسل بیفتم.
          باز هم ممنون.
          ای کاش درباره ی کدش هم توضیح اندکی میدادید.
          [align=left][align=left]
          کد:
          Private Sub Worksheet_SelectionChange(ByVal Target As Range)
          If Range("it65500") <> "" And Range("it65501") <> "" Then
          
          Range("it65500") = ""
          Range("it65501") = ""
          
          Range("it65500") = Application.Selection.Column
          
          ElseIf Range("it65500") = "" Then
          Range("it65500") = Application.Selection.Column
          
          ElseIf Range("it65500") <> "" Then
          Range("it65501") = Application.Selection.Row
          
          Cells(Range("it65501"), Range("it65500")).Select
          Range("it65500") = ""
          Range("it65501") = ""
          Else
          Cells(Range("it65501"), Range("it65500")).Select
          Range("it65500") = ""
          Range("it65501") = ""
          End If
          End Sub
          [/align][/align]

          کامنت

          • shamsololama

            • 2010/02/15
            • 940

            #6
            RE: سوال درباره ی فعال کردن یک سلول خاص با کلیک بر دکمه های مربوط به سطر و ستون آن

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

            در ین خط کدمان را در زیر روال SelectionChange صفحه مورد نظرمان قرار داده ایم
            Private Sub Worksheet_SelectionChange(ByVal Target As Range)



            در این خط دو سل را در نظر گرفته ایم که اگر خالی نبودند کد را اجرا کند
            If Range("it65500") <> "" And Range("it65501") <> "" Then

            در این دوخط در صورت برقرار بودن شرط بالا دوسل مورد نظر را خالی میکند
            Range("it65500") = ""
            Range("it65501") = ""

            در این خط از دوسلی که انتخاب کرده ایم سل اول یعنی it65500 برابر با شماره ستون سلی که با موس انتخاب کرده ایم می شود در واقع یعنی شماره ستون ما در آن ذخیره می شود
            Range("it65500") = Application.Selection.Column

            در صورتی که شرط بالا برقرار نباشد شرط زیر را برسی میکند که اگر سل اول یعنی it65500 خالی بود کد بعد از آن را اجرا کند
            ElseIf Range("it65500") = "" Then

            در این خط در صورت برقرار بودن شرط بالا سل اول را برابر با شماره ستون قرار می دهد
            Range("it65500") = Application.Selection.Column

            و باز هم اگر شرط دوم هم برقرار نبود این شرط بررسی میکند که اگر سل اول خالی نبود یعنی شماره ستون در آن نوشته شده بود کد بعد از آن را اجرا کند
            ElseIf Range("it65500") <> "" Then

            در صورت برقرار بودن شرط بالا یعنی شرط سوم سل دوم را برابر با شماره ردیف قرار میدهد
            Range("it65501") = Application.Selection.Row

            در این خط چون هم شماره ستون که در سل اول نوشته شده و شماره ردیف که در سل دوم نوشته شده را داریم پس با کد Cells(Column,Row که در این کد قرار داده و آن را انتخاب می کند که در اصل هدف ماست
            Cells(Range("it65501"), Range("it65500")).Select

            در این دو خط دو سا مورد نظر را که با شماره ردیف و شماره ستون پرشده بود را خالی میکنیم تا آماده شود برای انتخاب بعد
            Range("it65500") = ""
            Range("it65501") = ""

            در صورتی که هیچ کدام از شرط های بالا برقرار نباشد کد زیر اجرا میشود
            Else
            در این خط سل تقاطع ستون و ردیف را انتخاب می کند
            Cells(Range("it65501"), Range("it65500")).Select
            دوسل را خالی میکند
            Range("it65500") = ""
            Range("it65501") = ""
            پایان شرط ها
            End If
            پایان محدوده کد
            End Sub
            ---------------------------------------------------------------------------------------------------
            بمانیم تا کاری کنیم ،نه کاری کنیم تا بمانیم [size=x-small](دکتر شریعتی)[/size]
            shamsololama@yahoo.com
            09177733411

            کامنت

            چند لحظه..