PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : مقایسه 2 فایل مختلف



~M*E*H*D*I~
2012/01/25, 17:56
سلام
فرض کنید یک فایل اکسل با 5000 داده دارید با نام مثلا R0 ، این داده ها در دوره های مشخصی به روز آوری میشن که منجر میشه به تغییر کردن بعضی از داده و فایل جدید با نام R01 ذخیره و فایل قبلی آرشیو میشه حالا سوال اینجاست آیا میشه این 2 فایل رو طوری باهم مقایسه کرد که داده هایی که نسبت به فایل قبلی تغییر پیدا کردن تغییر رنگ بدن یا مثلا های لایت بشن

mahsa shayesteh
2012/01/25, 18:18
سلام به همه دوستای عزیز
ممنون از آقای وطن پرست بخاطر طرح این سوال این مشکل منم هست که معمولا با vlookup انجام میدم که خیلی وقت گیر و اعصاب خورد کنه اگه بشه add in طراحی کرد که 2 فایل مورد نظر رو بگیره و مقایسه کنه و موارد اختلاف رو تغییر رنگ بده خیلی عالیه خواهشن همه دوستای خوبم ایده بدن ابزار واقعا مفیدیه

Javid Mokhtari
2012/01/25, 20:56
سلام
فرض کنید یک فایل اکسل با 5000 داده دارید با نام مثلا R0 ، این داده ها در دوره های مشخصی به روز آوری میشن که منجر میشه به تغییر کردن بعضی از داده و فایل جدید با نام R01 ذخیره و فایل قبلی آرشیو میشه حالا سوال اینجاست آیا میشه این 2 فایل رو طوری باهم مقایسه کرد که داده هایی که نسبت به فایل قبلی تغییر پیدا کردن تغییر رنگ بدن یا مثلا های لایت بشن


با سلام دوست عزیز.
برای این کار مراحل زیر را انجام بدهید :

ابتدا اطلاعات شیت مبدا(sheet 1) را در شیت مقصد(sheet 2) کپی کنید. حالا در sheet 2 یک سلول دلخواه (A1) را انتخاب کنید و مسیر زیر را طی نمائید :
1_Home--->conditional formating--->Highlight cell Rules--->More Rules
حالت زیر را انتخاب کنید:
use a formula to determine which cell to format
در کادر : format values where this formula is true فرمول زیر را تایپ کنید :
=A1<>Sheet1!A1
حال در پائین کادر دکمه ای به نام Format وجود دارد ، آن را زده و تب Fill را انتخاب کرده و رنگی را برای در صورت مغایر بودن شرط انتخاب کنید(البته به غیر از رنگ میتوان Border-Font-Number خاصی را به جای رنگ استفاده کرد.اگر لازم بود بگید تا توضیح بدم).
حال Ok را بزنید.
باز هم Ok را بزنید.
تا حالا شرط را برای سلول A1 تعریف کردیم.حال اگر بخواهیم این شرط را به سلول های دیگر نیز اختصاص دهیم بصورت زیر عمل می کنیم :
سلول حاوی قالبندی شرطی (A1) را انتخاب کنبد. در پائین-قسمت چپ مربع کوچکی وجود دارد، آن را درگ کرده و به طرف سلول های مورد نظر بکشید(عمل Auto Fill) و ول کنید.بعد از ول کردن یک مربع(Auto Fill Option) ظاهر میشود،از آن گزینه ی Fill formatting only را انتخاب کنید.

خب این عمل یه مشکل کوچیک داره و اون اینه که اگر یک سلول در sheet1 خالی باشه به عنوان نا مساوی شناخته و عمل شرط را بر روی آن اعمال می کند که نباید چنین شود.برای رفع این مشکل باید چنین کرد :
مرحله 1 (بالا) را طی نمائید و در قسمت فرمول بنویسید :
=Sheet1!$A$1=""
دوباره دقیقاً مراحلی را که در بالا طی نموده بودید را دوباره برای این شرط تکرار کنید. در این مرحله به جای رنگ قرمز که برای شرط انتخاب می کردیم حالت No format set را از قسمت Preview برای رنگ شرط انتخاب می کنیم.
البته ابتدا می توانستیم ابتدا دو شرط را بر سلول A1 اعمال کنیم و سپس این دو شرط را همزمان برای دیگر سلول ها اختصاص دهیم.

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

~M*E*H*D*I~
2012/01/26, 14:12
سلام
ممنون از وقتی که گذاشتید منظور من 2 فایل مجزا هست و امکان وارد کردن هردو در یک شیت نیست

m_d6712
2012/01/26, 17:03
برای این کار میتوانید از VBA استفاده کنید.

ابتدا باید به فایل اکسل دیگر وصل شوید.
مثال کامل تر برای وصل شدن به یک فایل اکسل دیگر در این لینک وجود داره:
http://forum.exceliran.com/thread-253-post-720.html#pid720


که برای این کار: قبل از نوشتن این کد برای فعال سازی ADODB که کلاس خاصی برای وصل شدن به بانک های اطلاعاتی می باشد باید آن را به فایل خود Add کنید. برای این کار به روی Tools و در آن References را انتخاب کنید. در لیست کتابخانه Mirosoft ActiveX Data Objects 2.8 Library را انتخاب کرده و تیک آن را بزنید. و Ok را بفشارید.

سپس برای وصل شدن از دستور زیر استفاده کنید:


Dim cn As ADODB.Connection
Set cn = New ADODB.Connection
cn.Provider = "MSDASQL"
cn.Open "Driver={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)};" & _
"DBQ=<yourfile path and name> ; ReadOnly=True;"

دقت کنید که <yourfile path and name> باید با نام فایل شما جایگزین شود.

سپس در ادامه این کد را بزارید.


strQuery = "Select * From [Sheet1$A:Z]"
Set RsReport = cn.Execute(strQuery)
Sheet2.Range("A2:Z10000").CopyFromRecordset RsReport

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

در نهایت می توانید اطلاعات کپی کرده از فایل دوم رو پاک کنید تا حجم اضافی اشغال نشود.

در صورتی که تونستید این فایل رو درست کنید که هیچ! در غیر این صورت یک فایل نمونه خواهم گذاشت.

خوبی این روش این این است که شما یک بار برنامه رو می نویسید ولی می توانید برای تعداد زیاد بار ازش استفاده کنید.

همچنین امکان نوشتن یک Addin برای این منظور وجود داره! روش کار به همین صورتی است که گفتم.

~M*E*H*D*I~
2012/01/26, 20:25
سلام
2 فایل book1 , book2 داده های مشابه دارند اگر در book2 یکی از اعداد رو تغییر بدید(هر2 فایل باز باشند) و فرم کنترل رو بزنید اختلاف 2 فایل مشخص میشن دوستانی که میتونن تو بهبود برنامه کمک کنن






http://www.mediafire.com/?1gcw7bqcg6gyr6h
http://www.mediafire.com/?zd7bqoo17hbh51n

~M*E*H*D*I~
2012/01/27, 10:23
سلام
با عرض معذرت فایل book 2 اشتباه upload شده که تصحیح میشه

http://www.mediafire.com/?uym3635m2k1ba9e

~M*E*H*D*I~
2012/02/01, 16:03
سلام به دوستان عزیز
پیرو سوالی که پرسیدم در مورد مقایسه 2تا فایل میخوام به حالت نرم افزار درش بیارم یعنی یه فرم داشته باشم که یک کلید browse داشته باشه بشه فایل مورد نظر رو باهاش باز کرد و مسیری که فایل داره در یک متغیر ذخیره بشه ولی نتونستم دوستان کسی هس راهنمایی کنه یا یه فایل نمونه قرار بده؟

smartman
2012/02/05, 04:54
با سلام

از این Add-in بی نظیر -- دارای دهها ابزار مفید و کاربردی -- استفاده کنید.

http://parsaspace.com/files/9357504884/extools_rx.rar.html

بعد از باز کردن فایل {های} حاوی شیت‌های مورد مقایسه، مسیر زیر را دنبال کنید.

Extools>Worksheet>Organize>Compare Worksheets

دو شیت مورد نظر را انتخاب و تیک Highlight Differences را بزنید و بعد Ok کنید و از نتیجه آن لذت ببرید.

~M*E*H*D*I~
2012/02/05, 18:24
با تشکر از شما دوست عزیز
سوال من همچنان پابرجاست اگه کسی لطف کنه راهنمایی کنه ممنون میشم

smartman
2012/02/05, 19:02
با تشکر از شما دوست عزیز
سوال من همچنان پابرجاست اگه کسی لطف کنه راهنمایی کنه ممنون میشم


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

دقیقا بفرمایید مشکل از کجاست؟

~M*E*H*D*I~
2012/02/05, 19:26
سلام
نه متوجه منظور من نشدید من نگفتم add in که شما گذاشتی درست نیست منظور من این بود که چطور میشه فرمی طراحی کرد با دکمه brows که بشه یه فایل دیگرو با اون باز کرد مثل مثلا open خود اکسل که یه فایل رو میشه مثلا از desktop بازکرد

plc_pcb
2012/02/09, 14:47
سلام به دوستان عزیز
پیرو سوالی که پرسیدم در مورد مقایسه 2تا فایل میخوام به حالت نرم افزار درش بیارم یعنی یه فرم داشته باشم که یک کلید browse داشته باشه بشه فایل مورد نظر رو باهاش باز کرد و مسیری که فایل داره در یک متغیر ذخیره بشه ولی نتونستم دوستان کسی هس راهنمایی کنه یا یه فایل نمونه قرار بده؟

با سلام

کد زیر رو به یک باتن در فرمت اساین کن




Dim ads As String
ads = Application.GetOpenFilename
MsgBox (ads)
Workbooks.Open (ads)




آدرس فایل در متغیر ads ذخیره میشه

Javid Mokhtari
2012/03/05, 13:13
سلام
فرض کنید یک فایل اکسل با 5000 داده دارید با نام مثلا R0 ، این داده ها در دوره های مشخصی به روز آوری میشن که منجر میشه به تغییر کردن بعضی از داده و فایل جدید با نام R01 ذخیره و فایل قبلی آرشیو میشه حالا سوال اینجاست آیا میشه این 2 فایل رو طوری باهم مقایسه کرد که داده هایی که نسبت به فایل قبلی تغییر پیدا کردن تغییر رنگ بدن یا مثلا های لایت بشن



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

در ضمن هر دو فایل B1و B2 باید باز باشد.اگر در سلولی از B1 تغییراتی انجام بشه و با سلول متناظر آن در فایل B2 مطابقت نداشته باشد ، سلول موجود در B1 تغییر رنگ می دهد.

مقایسه دو فایل مختلف (http://www.faupload.com/upload/90/Esfand/مقايسه-2-فايل-مختلف.rar)

~M*E*H*D*I~
2012/03/05, 17:37
سلام
فرض کنید یک فایل اکسل با 5000 داده دارید با نام مثلا R0 ، این داده ها در دوره های مشخصی به روز آوری میشن که منجر میشه به تغییر کردن بعضی از داده و فایل جدید با نام R01 ذخیره و فایل قبلی آرشیو میشه حالا سوال اینجاست آیا میشه این 2 فایل رو طوری باهم مقایسه کرد که داده هایی که نسبت به فایل قبلی تغییر پیدا کردن تغییر رنگ بدن یا مثلا های لایت بشن



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

در ضمن هر دو فایل B1و B2 باید باز باشد.اگر در سلولی از B1 تغییراتی انجام بشه و با سلول متناظر آن در فایل B2 مطابقت نداشته باشد ، سلول موجود در B1 تغییر رنگ می دهد.

مقایسه دو فایل مختلف (http://www.faupload.com/upload/90/Esfand/مقايسه-2-فايل-مختلف.rar)



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

Javid Mokhtari
2012/03/05, 17:48
با سلام.

ببینید ، ابتدا دو فایل B1 و B2 رو باز کنید.فایل B1 را انتخاب کنید.حالا اگر در فایل B1 مقدار یک سلول را تغییر دهید ، مقدار سلول تغییر داده شده را در فایل B2 چک می کند اگر برابر نباشد رنگ سلول تغییر داده شده در فایل B1 هایلات می شود.

مثلاً اگر در فایل1 مقدار سلول A1 تغییر کند ، اکسل میاد مقدار سلول A1 در فایل1 را با مقدار سلول A1 در فایل2 چک میکند.اگر مقدار ها برابر نبود،سلول A1 واقع در فایل1 هایلایت می شود.

~M*E*H*D*I~
2012/03/05, 18:34
با سلام.

ببینید ، ابتدا دو فایل B1 و B2 رو باز کنید.فایل B1 را انتخاب کنید.حالا اگر در فایل B1 مقدار یک سلول را تغییر دهید ، مقدار سلول تغییر داده شده را در فایل B2 چک می کند اگر برابر نباشد رنگ سلول تغییر داده شده در فایل B1 هایلات می شود.

مثلاً اگر در فایل1 مقدار سلول A1 تغییر کند ، اکسل میاد مقدار سلول A1 در فایل1 را با مقدار سلول A1 در فایل2 چک میکند.اگر مقدار ها برابر نبود،سلول A1 واقع در فایل1 هایلایت می شود.


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

Javid Mokhtari
2012/03/31, 14:26
با سلام.
آقای وطن پرست ضمیمه زیر رو ملاحظه کنید...:
مقایسه (http://persiandrive.com/872234)

Javid Mokhtari
2012/03/31, 19:04
با سلام.
فایل قبلی چند تا اشکال داشت که رفع شد و به صورت فایل زیر در آمد.البته هنوز هم اشکالاتی داره که اگه وقت شد،اونهارو هم بر طرف می کنم.

ابتدا فایل B1 را باز کرده و از طریق دکمه ی موجود در شیت1 ،فایل B2 را انتخاب کرده و محدوده ی مقایسه را نیز تعیین کنید.
مقایسه 2 (http://persiandrive.com/695201)

Javid Mokhtari
2012/04/04, 16:28
ابتدا فایل B1 را باز کرده و از طریق دکمه ی موجود در شیت1 ،فایل دوم را انتخاب کرده و محدوده ی مقایسه را نیز تعیین کنید.



با سلام.
فایل مقایسه دو فایل مختلف (http://parsaspace.com/files/8042654884/?c=1177) به روز آوری شد.
البته اشکالات زیاد داره که باید رفع بشه.