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

موضوع: مشكل ىر اجراي ماكرويي با احراز شرط

  1. #1


    آخرین بازدید
    2022/12/20
    تاریخ عضویت
    August 2015
    نوشته ها
    99
    امتیاز
    17
    سپاس
    20
    سپاس شده
    7 در 7 پست
    تعیین سطح نشده است

    Nuclear مشكل ىر اجراي ماكرويي با احراز شرط

    سلام بر اساتید و دیگر دوستان
    برنامه پیچیده ای دارم که در مراحل آخرش با مشل روبرو شدم لذا با ارسال عین فایل و درخواست های دقیق امیدوارم لطف دوستان شامل حال بنده شود:
    با توجه به اینکه داده های فایل هرروز از اینترنت آپدیت میشود لذا لازم است اطلاعات روز قبل، قبل از آپدیت روز جاری کپی پست مقدار عددی شوند بنابراین کدی نیاز دارم که در اول ماکروی آپدیت که البته در یک شیت دیگر نوشته ام نوشته شود و شرایط و دستورا زیر را در شیتی که ارسال کرده ام اگر احراز شود راجرا کند سپس آپدیت انجام گیرد :
    1: اگر سلول r5<r3 باشد انگاه( value o3+value w6) در آخرین سط غیر خالی ستون f کپی پست شود و به تاریخ آخرین تارخ درج شده در ستون e یک روز اضافه شود و این کار تا زمانی که به تاریخ روز جاری که در سلول R3 درج شده است ادامه یابد
    و سپس کد آپدیتکه به شرح زیر نوشته ام اجرا شود
    Sub MacroUPDATE()'
    ' MacroUPDATE Macro
    '
    Range("o1:z1").Select
    ActiveSheet.Unprotect "123"
    ActiveWorkbook.RefreshAll
    ActiveSheet.Protect "123", DrawingObjects:=True, Contents:=True, Scenarios:=True
    End Sub
    که در قسمت ماکرو ها نیز موجود است
    خاطر نشان میکنم دکمه اجرای ماکرو و دستورات آپدیت در شیت دیگریست که میخواهم دستورات شرطی که در بالا ذکر کردم در شیت دیگر که برایتان ارسال کرده ام نیز با همین دکمه اجرا شود (یک دکمه برای دو شیت یعنی اول شروط شیت ارسالی احراز شود سپس آپدیت صورت گیرد)
    ضمنا " مقدار آخرین سطر ستون c در سلول w6
    مقدار آخرین سطر ستون e در سلول r5
    مقدار آخرین سطر ستون f در سلول t6
    ادرس مطلق آخرین سطر ستون f در سلول r6 رابا فرمول پیدا کرده ام که در صورت نیاز میتوان استفاده کرد. رمز فایل 123 با سپاس فراوان
    اخطار: این یک موضوع قدیمی است
    به دلیل قدیمی بودن موضوع، ممکن است برخی فایل های ضمیمه به درستی کار نکنند. لطفا در صورت عدم ضرورت، از بالا آوردن موضوعات قدیمی خودداری نمایید.
    فايل هاي پيوست شده فايل هاي پيوست شده
    ویرایش توسط taocom52 : 2016/02/06 در ساعت 03:28

  2.  

  3. #2


    آخرین بازدید
    یک ساعت پیش
    تاریخ عضویت
    September 2013
    محل سکونت
    بچه محل آقا امام رضا
    نوشته ها
    4,469
    امتیاز
    12312
    سپاس
    8,924
    سپاس شده
    10,583 در 3,742 پست
    سطح اکسل
    100.00 %

    سلام دوست عزیز
    تاریخ هایی که در ستون r نوشته شده بصورت دستی هست؟ یا اینکه از توابع شمسی ساز و یا پرنیان استفاده میشه؟
    اگه بصورت دستی باشه امکان محاسبه تفاضل وجود نداره. اما بر فرض که این مسئله رو در نظر نگیریم فرمول هایی که در ستون های f و g وجود داره. علت وجود این فرمول ها چیه؟

  4. سپاس ها (1)


  5. #3


    آخرین بازدید
    2022/12/20
    تاریخ عضویت
    August 2015
    نوشته ها
    99
    امتیاز
    17
    سپاس
    20
    سپاس شده
    7 در 7 پست
    تعیین سطح نشده است

    سلام با تشکر از توجهتان
    تاریخ سلول r3 (تاریخ امروز) توسط یک مبدل تاریخ از یک شیت دیگر به دست میاد که از یجایی دانلود کرده بودم ولی متاسفانه تاریخهای ستون e دستی هستند چون بلد نبودم از کجا و چه جوری و از چه تابعی استفاده کنم ، و چند روزیه که دارم رو این موضوع کار میکنم که در این مورد هم از راهنمایی حضرتعالی کمک میخوام
    در مورد فرمولهای ستونهای مذکور که فرمودید، این فرمولها بعد از اینکه سلول تاریخ با یک تاریخ پر شد فعال میشوند و محاسبات مخصوص خود را انجام میدهند
    کلا استاد هدف اینه که چون این فایل با یک دکمه در شیت مدیریت سهام (که بعلت اختصار در حجم فایل آن شیت را حذف کردم) آپدیت میشود ، هرگاه روز بعد آپدیت شد عددی که در ستون f هست و مربوط به روز قبل هست ثابت بشه و طبق فرمول بر اساس امروز تغییر نکنه و در همان آپدیت عدد دیروز بماند البته اگر چند روز این برنامه آپدیت نشود فاصله ای بین تاریخ آخرین آپدیت و روز جاری میافتد که بایستی این فاصله با درج تاریخهای روزهای (جا افتاده) گذشته در سلول های ستون e تا روز جاری پر شود که باالطبع عدد ستون f آن تاریخها مساوی آخرین تاریخی که آپدیت شده بود و عدد داشته خواهند شدتا نمودار مربوطه هم دارای گپ نشود .
    قبلا از مساعدت شما کمال تشکر را دارم
    ویرایش توسط taocom52 : 2016/01/30 در ساعت 00:34

  6. #4


    آخرین بازدید
    یک ساعت پیش
    تاریخ عضویت
    September 2013
    محل سکونت
    بچه محل آقا امام رضا
    نوشته ها
    4,469
    امتیاز
    12312
    سپاس
    8,924
    سپاس شده
    10,583 در 3,742 پست
    سطح اکسل
    100.00 %

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

    کد:
    Sub date_filling()
    Dim i As Integer
    diff = J_DIFF(Range("R5"), Range("R3"))
    LastRow = Right(Range("R6"), Len(Range("R6")) - 3)
    For i = 1 To diff
        LastRow = LastRow + 1
        Range("E" & LastRow) = J_ADDDAY(Range("R5"), 1, 1)
    Next i
    End Sub


  7. #5


    آخرین بازدید
    2022/12/20
    تاریخ عضویت
    August 2015
    نوشته ها
    99
    امتیاز
    17
    سپاس
    20
    سپاس شده
    7 در 7 پست
    تعیین سطح نشده است

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

  8. #6


    آخرین بازدید
    یک ساعت پیش
    تاریخ عضویت
    September 2013
    محل سکونت
    بچه محل آقا امام رضا
    نوشته ها
    4,469
    امتیاز
    12312
    سپاس
    8,924
    سپاس شده
    10,583 در 3,742 پست
    سطح اکسل
    100.00 %

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

  9. #7


    آخرین بازدید
    2022/12/20
    تاریخ عضویت
    August 2015
    نوشته ها
    99
    امتیاز
    17
    سپاس
    20
    سپاس شده
    7 در 7 پست
    تعیین سطح نشده است

    در شیت " مدیریت سهام" بایسی باشد البته مهندس جان من برنامه را تست کردم اشکالی که هست اینه که حتما قبل از اجرای کدی که شما ارسال کردید بایستی تاریخ امروز با آخرین تاریخ درج شده مقایسه شده و یک کپی پست کوچک انجام شود یعنی : اگر R3>R5 ( یعنی تاریخ امروز بزرگتر از آخرین تاریخ درج شده باشد) انگاه مقدار O3 در سلول روبروي (متناظر) آخرین سلول غيری خالی ستون E (که همان اخرین تاریخ درج شده در ستون E است) يعني در ستون f کپی پست value شود بطور واضح اگر در فایل پیوست توجه کنید : مثلا اگر آخرین تاریخ درج شده در ستون E7 تاریخ 94/11/20 باشد و تاریخ امروز ( سلول R3) تاریخ 94/11/21 باشد باید قبل از انجام کد شما (اضافه شدن تاریخ به سلولهای بعدی) باید مقدار Q3 درf7 کپی پست value شود تا روزهای بعد ، بعد از آپدیت مقدار F7 تغییر نکند. متشکرم
    ویرایش توسط taocom52 : 2016/02/10 در ساعت 23:28


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

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

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

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

  1. ماكرويي براي PROGRESS BAR
    توسط اهورا در انجمن سوالات پیرامون ويژوال بيسيك - VBA Questions
    پاسخ ها: 3
    آخرين نوشته: 2019/07/15, 00:26
  2. [حل شده] سرچ در ليست كشويي
    توسط mostafa_s در انجمن سوالات پیرامون ويژوال بيسيك - VBA Questions
    پاسخ ها: 3
    آخرين نوشته: 2015/12/23, 16:18
  3. امكان سرچ در ليست كشويي
    توسط javadsar در انجمن سوالات پیرامون ويژوال بيسيك - VBA Questions
    پاسخ ها: 0
    آخرين نوشته: 2013/12/25, 16:26
  4. ماكرويي براي ارسال ايميل
    توسط اهورا در انجمن سوالات پیرامون ويژوال بيسيك - VBA Questions
    پاسخ ها: 11
    آخرين نوشته: 2013/11/17, 10:04
  5. آموزش : چگونو به راست كليك در اكسل منويي اضافه كنيم
    توسط mshahin در انجمن سوالات پیرامون ويژوال بيسيك - VBA Questions
    پاسخ ها: 0
    آخرين نوشته: 2012/07/17, 10:07

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

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

کلمات کلیدی این موضوع

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

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

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