بسته شدن و باز شدن یک فایل

Collapse
X
 
  • زمان
  • نمایش
Clear All
new posts
  • علی فاطمی

    • 2014/02/17
    • 523

    بسته شدن و باز شدن یک فایل

    با سلام و صبح بخیر
    ایا امکان داره ماکرویی نوشت که یک فایل رو ببنده و بعد از بسته شدن دوباره فایل باز بشه؟
    ممنون از توجه شما.
    در دنیا فقط یک نفر وجود دارد که باید از او بهتر باشید و آن کسی نیست جز گذشته خودتان



  • Ali Parsaei
    مدير تالارتوابع اکسل

    • 2013/11/18
    • 1518

    #2
    سلام علي آقا، راستش من درست منظورتان را متوجه نشدم! دوباره فايل باز شود يعني چي؟ يک کم توضيح مي دهيد؟
    به فرض کد زير فايلي به نام 2 که باز است را مي بندد:
    کد PHP:
    Workbooks("2.XLSX").Close 
    اين يکي هم فايل 2 را که آدرسش روي درايو E است را باز مي کند:
    کد PHP:
    Workbooks.Open Filename:="E:\2.XLSX" 
    البته در کد دوم بايد آدرس دقيق فايل درج گردد
    حالا مشکل چيست؟
    آيا منظورتان اين است که اگر يک فايل باز را با کد بستيم و دوباره خواستيم همان فايل را باز کنيم ديگر نياز نباشد آدرس کامل بدهيم؟
    sigpic

    کامنت

    • mokaram
      مدير تالار اکسل و بانک اطلاعاتی

      • 2011/02/06
      • 1805

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

      کامنت

      • علی فاطمی

        • 2014/02/17
        • 523

        #4
        با سلام و تشکر از توجه آقایان پارسا و مکرم ،
        بله منظورم همون دو جمله آخری که شما عزیزان فرمودید . توی یه ماکرو کد بستن فایل رو نوشتم می خواستم بعد از همون کدی بنویسم که همون فایل رو باز کنه. نمی دونم میشه یا نه؟؟؟؟؟
        بزارید مشکلم رو که منتج به این نیاز شده رو عرض کنم. من دستور saveas رو توی یه ماکرو نوشتم، تو یکی از فرمها با یه ماکرو یه سری textbox ایجاد میکنه ، بعد وقتی فایل saveas میشه وقتی ماکرو فرم فعال میشه با اینکه برای ایجاد textbox شرط دارم و شرط برقرار نیست ولی textbox ها نمایش داده میشه که حاوی اطلاعات فایل قبلیه ( شیتی که تکست باکسها از اون اطلاعات می گیرن توی saveas خالیه ) انگار textbox های ایجاد شده در بافر برنامه باقی میمونه ولی وقتی فایل بسته میشه و بعد باز میشه textbox ها نمایش داده نمیشه !!!!!!!!!!!
        حالا می دونم راه حلی وجود داره که بدون بسته شدن فایل ، به نتیجه رسید یا اینکه باید حتما فایل بسته بشه .
        ببخشید نمی دونم منظورم رو رسوندم یا نه ، حقیقتش اینجا ( سرکارم ) وحشتناک شلوغه دیگه معذرت دیگه....

        بزارید نهایت سوءاستفاده رو ببرم ، من میخوام زمانی که فایلم رو saveas کردم Caption فرم اصلیم برابر بشه با filename . اصلا این امکان وجود دراه ؟
        در دنیا فقط یک نفر وجود دارد که باید از او بهتر باشید و آن کسی نیست جز گذشته خودتان



        کامنت

        • علی فاطمی

          • 2014/02/17
          • 523

          #5
          با سلام ..
          موضوع فوق امکان پذیر هست؟
          در دنیا فقط یک نفر وجود دارد که باید از او بهتر باشید و آن کسی نیست جز گذشته خودتان



          کامنت

          • علی فاطمی

            • 2014/02/17
            • 523

            #6
            با سلام یکی به داد ما برسهههههههههههههههههههههههههههه
            در دنیا فقط یک نفر وجود دارد که باید از او بهتر باشید و آن کسی نیست جز گذشته خودتان



            کامنت

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

              • 2013/01/17
              • 1198

              #7
              با درود
              والا منظورتو متوجه نشدم اما اگر میخوای که caption فرمتون با نام فایل یکی بشه میشه از کد زیر بهره گرفت
              کد:
              rivate Sub UserForm_Initialize()
              Me.Caption = ActiveWorkbook.Name
              End Sub
              در ایونت بالا اومدن فرم نوشته شده - حالا اگر نام فایل تغییر بکنه فرقی نمیکنه اونم خودکار تغییر میکنه
              در پناه خداوندگار ایران زمین باشید و پیروز

              کامنت

              • علی فاطمی

                • 2014/02/17
                • 523

                #8
                نوشته اصلی توسط امين اسماعيلي
                با درود
                والا منظورتو متوجه نشدم
                با سلام و ممنون از توجه شما
                مثل همیشه تا تشریف میارین مسائل یکی یکی حل میشن.
                در مورد موضوع بالا ، ببینین من توی یه یوزرفرم یه دستور ساخت تکست باکس دارم که توی initialize یوزرفرم قرار داره و اطلاعات تکست باکس ها از یه شیت به یوزرفرم منتقل میشه و شرط بوجود آمدن تکست ها هم وجود اطلاعات در همون شیت هستش، حالا وقتی از کل برنامه saveas میگیرم (که اونم با کد نویسی هستش ) توی فایل جدید با یه کد تمامی اطلاعات شیت مذکور پاک میشه ، با توجه به این مسائل عملا زمانی که فرم باز میشه نباید تکست باکس ها ایجاد بشه در صورتی که تکست باکس ها ایجاد میشه و اطلاعات فایل قبلی ( که دیگه الان توی فایل savas شده وجود نداره ) نمایش داده میشه و اگر یکبار برنامه بسته بشه و دوباره باز بشه تکست باکس ها ایجاد نمیشه.
                امیدوارم توضیحاتم کامل باشه.
                در دنیا فقط یک نفر وجود دارد که باید از او بهتر باشید و آن کسی نیست جز گذشته خودتان



                کامنت

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

                  • 2013/01/17
                  • 1198

                  #9
                  خب بزار ببینم من درست متوجه شدم
                  مشکل تو فایل نیست تو یوزر فرمته اره
                  اگر اینطوره که فکر کنم مثلا بنویسی
                  unload me
                  بعدش دوباره بنویسی userform1.show (مثلا اسمش همینه ) دوباره لود بشه حل میشه

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

                  کامنت

                  • علی فاطمی

                    • 2014/02/17
                    • 523

                    #10
                    نوشته اصلی توسط امين اسماعيلي
                    خب بزار ببینم من درست متوجه شدم
                    مشکل تو فایل نیست تو یوزر فرمته اره
                    اگر اینطوره که فکر کنم مثلا بنویسی
                    unload me
                    بعدش دوباره بنویسی userform1.show (مثلا اسمش همینه ) دوباره لود بشه حل میشه

                    اگر اشتباه میکنم یا برداشتم از یوزر فرم غلط هست بگو دستورات فوق رو هم اخرین خط کدات باشن
                    با سلام و صبح بخیر
                    ضمن تشکر از توجه شما ، اگر فایل پیوست رو ملاحظه بفرمائید در شیت1 پس ازکلیک روی کامن باتن ، یک یوزرفرم مشاهده میشه که caption یوزرفرم همنام فایل مربوطه (Example) هستش و اطلاعات داخل تکست باکس ها از شیت1 گرفته شده . حالا اگر کامن باتن SaveAs رو بزنید و یه فایل جدید مثلا به اسم Book1 ایجاد کنید همزمان اطلاعات شیت1 نیز پاک میشه ، پس از زدن کامن باتن شیت1 در فایل جدید بایستی یک یوزرفرم با نام Book1 دیده بشه و هیچگونه تکست باکس یا اطلاعاتی مشاهده نشه چرا که شیت1 خالیه ، ولی یوزرفرم با همون نام فایل قبلی (Example) مشاهده میشه که اطلاعات فایل قبلی رو نشون میده !!!!!!!!!!!!!!!!!!!!! و وقتی فایل رو بطور کامل می بندی و باز می کنی پس از زدن کامن باتن شیت1 یوزرفرم با نام Book1 دیده میشه که هیچگونه تکست باکس یا اطلاعاتی رو نشون نمیده.
                    ممنون از توجه شما.
                    فایل های پیوست شده
                    در دنیا فقط یک نفر وجود دارد که باید از او بهتر باشید و آن کسی نیست جز گذشته خودتان



                    کامنت

                    • علی فاطمی

                      • 2014/02/17
                      • 523

                      #11
                      اساتید و مدیران محترم ممنون میشم اگر ملاحظه ای بفرمائید....
                      در دنیا فقط یک نفر وجود دارد که باید از او بهتر باشید و آن کسی نیست جز گذشته خودتان



                      کامنت

                      • Ali Parsaei
                        مدير تالارتوابع اکسل

                        • 2013/11/18
                        • 1518

                        #12
                        علي آقا مي خواهم يک شوخي باهت بکنم، ناراحت که نمي شي؟
                        خوب .... حالا که ناراحت نمي شي شروع مي کنم:

                        نمونه تاپيکهاي ايجاد شده توسط آقاي فاطمي:

                        پست اول: با سلام، من يک مشکلي دارم به اين صورت که ..........

                        يک ساعت بعد: دوستان هر کي مي تونه لطفا" جواب من را بدهد

                        دو ساعت بعد: آقا کسي نبود جواب ما را بدهد؟

                        سه ساعت بعد: يو هوووووووو .... آهايييييي، بابا يکي به داد ما برسه

                        چهار ساعت بعد: .................



                        از شوخي گذشته من يکي که به جون مادرم من همه سوالاتون رو مي خونم، شاهدم هم همين نوشته بالا است! ببينيد چه خوب مي دونم تو تاپيکهاتون چه خبر است!
                        ولي تاسفانه سواد ندارم جواب بدهم!
                        sigpic

                        کامنت

                        • علی فاطمی

                          • 2014/02/17
                          • 523

                          #13
                          نوشته اصلی توسط علي پارسا
                          علي آقا مي خواهم يک شوخي باهت بکنم، ناراحت که نمي شي؟
                          خوب .... حالا که ناراحت نمي شي شروع مي کنم:

                          نمونه تاپيکهاي ايجاد شده توسط آقاي فاطمي:

                          پست اول: با سلام، من يک مشکلي دارم به اين صورت که ..........

                          يک ساعت بعد: دوستان هر کي مي تونه لطفا" جواب من را بدهد

                          دو ساعت بعد: آقا کسي نبود جواب ما را بدهد؟

                          سه ساعت بعد: يو هوووووووو .... آهايييييي، بابا يکي به داد ما برسه

                          چهار ساعت بعد: .................



                          از شوخي گذشته من يکي که به جون مادرم من همه سوالاتون رو مي خونم، شاهدم هم همين نوشته بالا است! ببينيد چه خوب مي دونم تو تاپيکهاتون چه خبر است!
                          ولي تاسفانه سواد ندارم جواب بدهم!
                          باسلام و مخلص علی آقا
                          اول معذرت می خوام
                          دوم من وقتی یه مشکل دارم خودم هزار جور این ور اون ور میزنم تا ببینم چکار می تونم بکنم (حالا تاپیکایی که تو کله من زده میشه ببین چه خبره) بعد میام آخرین ارسال ها رو نگاه می کنم می بینم ای داد بر من تاپیک نیست و بعد منتج میشه به جملات فوق........ ( علی آقا عاشق نکته بینی شمام)
                          سوم آقا من چکار کنم اینقدر که تو این سایت اساتید و مدیران از جمله خود شما در کمترین زمان بهترین پاسخ رو می دین خوب با عرض پوزش من بد عادت شدم.
                          در نهایت بازم منو ببخشید.
                          در دنیا فقط یک نفر وجود دارد که باید از او بهتر باشید و آن کسی نیست جز گذشته خودتان



                          کامنت

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

                            • 2013/01/17
                            • 1198

                            #14
                            با درود
                            علی جون از شمو بعیده
                            تو کد سیو نوشتی Userform1.hide
                            خو این موقتا هاید کرده اما بسته نشده
                            به جای این کد بنویس Unload me مشکلت حل میشه میره پی کارش و اما مشکل دیگه فایلت
                            اینکه اگر طرف سیو بزنه یهو پشیون بشه دیگه کاری نمیتونه بکنه
                            در پناه خداوندگار ایران زمین باشید و پیروز

                            کامنت

                            • علی فاطمی

                              • 2014/02/17
                              • 523

                              #15
                              نوشته اصلی توسط امين اسماعيلي
                              با درود
                              علی جون از شمو بعیده
                              تو کد سیو نوشتی Userform1.hide
                              خو این موقتا هاید کرده اما بسته نشده
                              به جای این کد بنویس Unload me مشکلت حل میشه میره پی کارش و اما مشکل دیگه فایلت
                              اینکه اگر طرف سیو بزنه یهو پشیون بشه دیگه کاری نمیتونه بکنه
                              با سلام و روز بخیر
                              مرسی از توضیحاتتون ، منظورتون اینه که برای saveas از یه کد دیگه استفاده کنم که اگر کاربر نخواد saveas کنه دوباره بتونه رو هم فایل کار کنه ، دنبال یه کد دیگه می گردم اگر سوادم قد نداد قطعا مزاحم می شم.
                              ممنون از توجه شما.
                              در دنیا فقط یک نفر وجود دارد که باید از او بهتر باشید و آن کسی نیست جز گذشته خودتان



                              کامنت

                              Working...