این اموزش ابزار گزارش گیری خیلی واضح نیست می شه یک کم بیشتر توضیح بدیدنقل قول:
سلام
آموزش Pivot Table (ابزار گزارش گيري در اكسل)
Printable View
این اموزش ابزار گزارش گیری خیلی واضح نیست می شه یک کم بیشتر توضیح بدیدنقل قول:
سلام
آموزش Pivot Table (ابزار گزارش گيري در اكسل)
آموزش Pivot Table (ابزار گزارش گيري در اكسل)نقل قول:
PT هميشه براي به دست آوردن جمع كل يك داده به كار مي رود.
مثلاً جمع كل فروش شركت در تاريخ فلان يا جمع كل نمره دانش آموزان در آزمون فلان يا جمع كل ؟؟؟؟ در ؟؟؟؟ .
فرض كنيد يه شركت فروش روزانه خودش رو در جداول اكسل ثبت مي كنه.
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
حالا ميخواد مجموع فروش مودم هاي ADSL رو در تاريخ 23/4/86 بدونه.
مراحل كار:
Data> Pivot Table and Pivot Report> Finish
حالا با عمل كشيدن و رها كردن (Drag & Drop) فيلد «نام كالا» رو از قسمت Pivot Table Field List به قسمت Drop Row Fields Here برده و تاريخ فروش رو به قسمت Drop Column Fields Here و قيمت فروش رو به قسمت Drop Data Items Here مي بريم.
خواهيم ديد كه در PT ايجاد شده، مجموع فروش هر كالا در هر تاريخ، مجموع كل فروش هر تاريخ، مجموع كل فروش هر كالا و مجموع كل فروش تا كنون به ما داده ميشه. خيلي جالبه. نيست؟
دوست عزیز javad2625
ممنونم ازتوضیحات کاملی که دادید
اما یک سوال : ایا دراکسل فقط در همین حد می شه گزارش تهیه کرد ؟
نقل قول:
ضمناً انتظار ندارم همه چيزهايي رو كه در قسمت كدنويسي گفتم فهميده باشيد، اما انتظار دارم سوال زير رو بتونيد جواب بديد:
يك TextBox ديگر به كاربرگ اضافه كرده و برنامه اي بنويسيد كه به محض كليك روي آن TB، كپشن CommandButton1 تبديل شود به:
"TextBox2 Clicked!"
اگه جواب رو مي دونستيد، نمونه كد رو همينجا بگذاريد. اگه نمي دونستيد بگيد تا خودم توضيح بدم.
دوست عزیز javad2625
من فایلی را که خواستید اپلود کردم یه نگاه بکنید
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
با سلام و تبريك عيد مبعث به همه دوستان
اين هم عيدي من:
باز كردن قفل فايل هاي آفيس (97 تا 2003)
(تمام برنامه هاي زيرمجموعه آفيس شامل ورد، اكسل، پاورپوينت، اكسس و...)
نسخه نمايشي آخرين ورژن رو از اينجا:
و س.ن. اون رو از اينجا دريافت كنيد:کد:http://www.elcomsoft.com/aopr.html
موفق باشيد.کد:http://www.4shared.com/file/21832953/5ffd20fa/Serial_Number.html
(جواب هاي mefmef رو هم فردا ميگم)
من غير از Pivot Table ابزار خاصي براي گزارش گيري در اكسل سراغ ندارم. گزارش هاي اكسل رو بايد به صورت دستي درست كنيم. البته ميشه با ماكروها و/يا برنامه نويسي vb يه مقدار روند كار رو سريعتر كرد اما اون نرم افزاري كه واقعاً ابزارهاي قوي براي گزارش گيري داره Microsoft Access هست كه طرز كاري حرفه اي تر از Excel داره و كاربرپسندي و سهولت كار اون رو هم نداره. با اين وجود كساني كه نياز حتمي به تهيه گزارش هاي اتوماتيك داشته باشند و پيچيدگي گزارش هاي مورد نيازشون طوري باشه كه به صورت دستي نشه توي اكسل درست كرد، بايد از Access استفاده كنند.نقل قول:
مف مف جاننقل قول:
جواب شما درست بود و معلوم ميشه تا اينجاي كار رو خوب متوجه شديد.
البته نيازي نبود فايل رو آپلود كنيد. فقط نمونه كد مربوط به سوال رو هم اگه مي گذاشتيد كافي بود. مثل اين:
ادامه آموزش امشب آخر شب.کد:Private Sub TextBox2_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Me.CommandButton1.Caption = "TextBox2 Clicked!"
End Sub
ممنونم دوست عزیز منم عید سعید مبعث را به شما وهمه دوستان دیگه تبریک می گمنقل قول:
مف مف جان
راستی این مف مف جان کی بید ؟
پس اسم شما رو به فارسي چطور مي نويسند؟نقل قول:
راستی این مف مف جان کی بید ؟
برنامه نويسي ويژوال بيسيك در اكسل
درس چهارم: برنامه نويسي براي صفحه كليد (رويداد KeyDown)
بعضي وقت ها لازم ميشه برنامه رو طوري تنظيم كنيم كه مثلاً با فشردن دكمه Enter يا دكمه ↓ روي صفحه كليد، نشانگر متن به TextBox بعدي بره. يا با زدن ↑ به خانه قبلي منتقل بشه.
(وقتي ميگم «نشانگر متن» منظورم خط چشمك زن عمودي هست).
ويژوال بيسيك، تمام دكمه هاي صفحه كليد رو با كد Ascii اونها ميشناسه. وقتي كاربر، هر دكمه اي رو داخل يه TextBox فشار بده فوراً رويداد KeyDown اون TB فعال شده و كد اون دكمه رو به پارامتر KeyCode انتقال ميده.
مثال
يه TextBox و يه CommandButton به كاربرگ اضافه كنيد و در رويداد TextBox1_KeyDown كد زير رو بنويسيد:
حالا برنامه رو اجرا كنيد. (وقتي ميگم اجرا كنيد يعني به كاربرگ برگرديد و اون رو از حالت Design Mode خارج كنيد). مي بينيد كه وقتي نشانگر متن داخل اون TB هست، هر كليدي رو بزنيد، كد اسكي كليد روي CommandButton نوشته ميشه.کد:Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
Me.CommandButton1.Caption = KeyCode
End Sub
حالا مي تونيد بگيد كد دكمه هاي جهت (Arrow Keys) چند هست؟ اونها رو پيدا كنيد كه بعداً باهاش كار داريم.
تمرين
چهار تكست باكس به كاربرگ خود اضافه كنيد. (از TextBox2 تا TextBox5) و برنامه اي بنويسيد كه به محض زدن كليد Enter يا كليد ↓ نشانگر متن رو به TB بعدي و در صورت زدن دكمه ↑ نشانگر رو به خانه قبلي ببره. (دقت كنيد كه TB2 خانه قبلي نداره و TB5 هم خانه بعدي نداره پس در TB2 نيازي به رفتن به خانه قبل و در TB5 نيازي به رفتن به خانه بعد نيست).
روش كار
4 تكست باكس گفته شده رو به كاربرگ اضافه كنيد. و در رويداد KeyDown اونها كد مشابه زير رو بنويسيد:
(من كد TB2 و TB3 رو با توپيحات فارسي مي نويسم، شما هم كد TB4 و TB5 رو بنويسيد و همينجا بگذاريد).
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
(دقت كنيد كه نوشتن توضيحات،در هر قسمت دلخواه از كد بعد از علامت ' (آپاستروف) بلامانع هست. )کد:Private Sub TextBox2_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
Select Case KeyCode '--> ' ببين كدام كليد فشرده شده
Case 40, 13 '--> ' 'اگر 40 يا 13 بود (يعني دكمه جهت پايين يا دكمه اينتر
Me.TextBox3.Activate '--> ' تكست باكس 2 را فعال كن
End Select '--> ' پايان انتخاب
End Sub
کد:Private Sub TextBox3_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
Select Case KeyCode '--> ' شماره كليد را انتخاب كن
Case 40, 13 '--> ' اگر 40 يا 13 است يعني دكمه پايين يا دكمه اينتر
Me.TextBox4.Activate '--> ' تكست باكس 4 را فعال كن
Case 38 '--> ' آگر 38 است يعني دكمه جهت بالا
Me.TextBox2.Activate '--> ' تكست باكس 2 را فعال كن
End Select '--> ' پايان انتخاب حالت
End Sub
ببخشید من میم را با ضمه خواندم!!!نقل قول:
پس اسم شما رو به فارسي چطور مي نويسند؟
ضمنا خیلی ممنون خیلی عالی بود
دوست عزیز
javad2625
من برای تکست باکس 4 کد زیر را نوشتم ولی برای تکست باکس 5 چیزی به ذهنم نرسید !!!!!!!
کد:Select Case KeyCode
Case 40, 13
Me.TextBox5.Activate
Case 38
Me.TextBox3.Activate
End Select
ضمنا اگر بخوام موقع فعال شدن فرم تکست باکس 1 فعال بشه چکار باید بکنم ؟
سلام.خیلی عالی است.آقا جواد دستت درد نکنه
راستش من هنوز وقت نکردم همه مطالبو بخونم.فقط چون خودم می خوام یه جزوه آموزش اکسل داشته باشم تا بعدا بهش مراجعه کنم و اگه کسی ازم سوال کرد بتونم جواب بدم می خواستم از آقا جواد اجازه بگیرم که آیا ایرادی داره من مطالبه شما رو توی جزوم کپی پیست کنم و در اختیار دیگران قرار بدم؟
سلام Mefmef جاننقل قول:
کد رو خوب و درست نوشتی. معلومه که خوب متوجه شدی.
برای TB5 هم با یه کم تغییر می تونستی همون کد رو استفاده کنی، فقط قسمت اول (کد مربوط به دکمه جهت پایین و دکمه اینتر) رو لازم نداشت. نگاه:
برای این که موقع باز شدن WorkBook تکست باکس 1 فعال بشه باید در رویداد WorkBook_Open کدی رو که میگم بنویسید.کد:Select Case KeyCode
Case 38 '--> ' دکمه جهت بالا
Me.TextBox4.Activate
End Select
اول سمت چپ محیط کدنویسی در قسمت Project روی ThisWorkBook دوبار کلیک کنید، بعد در بالای پنجره کدنویسی، قسمت اشیاء ، شیء WorkBook رو انتخاب و در رویداد WorkBook_Open کد زیر رو بنویسد:
کد:Private Sub Workbook_Open()
Sheet1.TextBox1.Activate
End Sub
نقل قول:
سلام
از شما ممنونم
کپی از مطالبی که میگذارم اشکال نداره مگر این که خودم بگم کپی نکنید.
برنامه نویسی ویژوال بیسیک در اکسل
درس پنجم: انتقال داده ها از تکست باکس به کاربرگ
فرض کنید 3 تا TB دارید و میخواید نوشته های داخل اونها رو به خانه های A1 تا C1 از Sheet2 منتقل کنید. چکار می کنید؟
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
این کار بسیار ساده هست. کافیه یه CommandButton به برنامه اضافه کنیم و دستورات زیر رو در رویداد Click اون بنویسیم:
(تذکر: اعدادی که جلوی Cells نوشته شده اند به ترتیب شماره ردیف و شماره ستون خانه مورد نظر از جدول هستند و به جای اونها می تونه هر شماره دلخواه دیگری هم گذاشته بشه).
خوب!کد:Sheet2.Cells(1,1).Value = TextBox1.Text
Sheet2.Cells(2,1).Value = TextBox2.Text
Sheet2.Cells(3,1).Value = TextBox3.Text
حالا TB ها و CB رو بکشید و کدی رو که گفتم امتحان کنید ببینید درست کار می کنه یا نه؟
اگه درست کار کرد به سوال زیر جواب بدید:
سوال:
5 تکست باکس بکشید (از TB1 تا TB5) و برنامه ای بنویسید که داده های این TB ها رو به خانه های A1 تا A5 از Sheet2 منتقل کنه بعد هم Sheet2 رو فعال کنه (نمایش بده).
راهنمایی: برای نمایش Sheet2 باید از دستور Sheet2.Activate استفاده کنیم.
حالا یه سوال سخت هم می خوام بپرسم ببینم کی می تونه جواب بده:
در رویداد TextBox5_KeyDown برنامه ای بنویسید که اگه کسی کلید Enter رو در TB5 بزنه برنامه قبلی (جواب سوال قبل) اجرا بشه.
راهنمایی: از دستور Select Case استفاده کنید. کد کلید Enter هم عدد 13 هست.
برای امروز دیگه کافیه.
یکی دو جلسه دیگه از کلاس های ویژوال بیسیک مونده که بعداً ادامه میدیم. بعدش هم مثل قبل بر می گردیم به سبک Q&A (سوال و جواب).
بروبکس ازیز
اگه خواصطید طو برنامه های دیگیه آفیص ، از اکسل و اینچیزا استفاده کنید، یا تو برنامه ویبیه خودتون، کافیه که فایل لایبرریه اکسل رو Add کنید تو برنامتون....
اگه دلتون میخواد که تو اوتوکت هم برنامه بنویسید، منو بخبرید، پیلیض..
سلام دوست عزیز javad2625
کدی که گفته بودید را نوشتم درسته ؟
ولی متوجه این سوال نشدم وقتی کلید اینتر را می زنیم چی اجرا بشه ؟کد:Sheet2.Cells(1, 1).Value = TextBox1.Text
Sheet2.Cells(1, 2).Value = TextBox2.Text
Sheet2.Cells(1, 3).Value = TextBox3.Text
Sheet2.Cells(1, 4).Value = TextBox4.Text
Sheet2.Cells(1, 5).Value = TextBox5.Text
Sheet2.Activate
یه سوالم دارم اگه بخواهیم بعد از ذخیره شدن اطلاعات مثلا در ردیف a1 تا f1 تمام تکست باکسها خالی شده و کرسر به تکست باکس اول منتقل بشه وبا کلیک بعدی کلید فرمان اطلاعات جدیدی که وارد کردیم در ردیف a2 تا f2 ذخیره بشه واین کار در ردیفهای بعدی هم تکرار بشه چکار باید بکنیم ؟نقل قول:
حالا یه سوال سخت هم می خوام بپرسم ببینم کی می تونه جواب بده:
در رویداد TextBox5_KeyDown برنامه ای بنویسید که اگه کسی کلید Enter رو در TB5 بزنه برنامه قبلی (جواب سوال قبل) اجرا بشه.
بله! كاملاً درست نوشتي.نقل قول:
کدی که گفته بودید را نوشتم درسته ؟
وقتي Enter رو مي زنيم، همون كدي كه الآن نوشتي اجرا بشه.نقل قول:
ولی متوجه این سوال نشدم وقتی کلید اینتر را می زنیم چی اجرا بشه ؟
براي اين كار، كافيه اون كد رو در رويداد TextBox5_Keydown داخل عبارت Select Case بنويسيم. اينجوري:
(همونطور كه مي بينيد در اين كدي كه نوشتم، فاصله قسمت هاي مختلف كد، نسبت به ابتداي سطر با هم متفاوت هست. كار رو برنامه نويس ها براي زيبايي بيشتر و خواناتر شدن كد مي كنند. شما هم بهتره هميشه همين كار رو بكنيد. )کد:Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
Select Case KeyCode
Case 13 'Enter
Sheet2.Cells(1, 1).Value = TextBox1.Text
Sheet2.Cells(1, 2).Value = TextBox2.Text
Sheet2.Cells(1, 3).Value = TextBox3.Text
Sheet2.Cells(1, 4).Value = TextBox4.Text
Sheet2.Cells(1, 5).Value = TextBox5.Text
Sheet2.Activate
End Select
End Sub
براي پاك كردن محتواي هر تكست باكس (مثلاً TB1):نقل قول:
یه سوالم دارم اگه بخواهیم بعد از ذخیره شدن اطلاعات مثلا در ردیف a1 تا f1 تمام تکست باکسها خالی شده و کرسر به تکست باکس اول منتقل بشه وبا کلیک بعدی کلید فرمان اطلاعات جدیدی که وارد کردیم در ردیف a2 تا f2 ذخیره بشه واین کار در ردیفهای بعدی هم تکرار بشه چکار باید بکنیم
براي فعال كردن تكست باكس 1:کد:TextBox1.Text = ""
براي اين كه داده ها در اولين رديف خالي از Sheet2 نوشته بشن،کد:TextBox1.Activate
بايد در همون كد قبلي، به جاي نوشتن شماره رديف، از برنامه بخوايم كه شماره اولين رديف خالي رو به دست بياره و استفاده كنه:
کد:i = Sheet2.Range("A" & Rows.Count).End(xlUp).Row + 1
Sheet2.Cells(i, 1).Value = i 'ÔãÇÑå ÑÏíÝ
Sheet2.Cells(i, 2).Value = TextBox1.Text
Sheet2.Cells(i, 3).Value = TextBox2.Text
Sheet2.Cells(i, 4).Value = TextBox3.Text
Sheet2.Cells(i, 5).Value = TextBox4.Text
Sheet2.Cells(i, 6).Value = TextBox5.Text
سلام دوست عزیز javad2625
خیلی ممنون از توضیحاتی که دادید فقط اگر لطف کنید در مورد کد زیر کمی بیشتر توضیح بدید سپاسگزار می شم
نقل قول:
i = Sheet2.Range("A" & Rows.Count).End(xlUp).Row + 1
Sheet2.Cells(i, 1).Value = i 'ÔãÇÑå ÑÏíÝ
سلامنقل قول:
فكر كنم از ويندوز 98 استفاده مي كنيد كه باعث ميشه توضيحات فارسي رو كه جلوي كدهاي مي نويسم به اين صورت ببينيد:
'ÔãÇÑå ÑÏíÝ
توضيح عملكرد اين خط از برنامه سخته، ولي اين خط، متغير i رو مساوي شماره اولين رديف خالي از ستون A قرار ميده. اينطوري مي تونيم هر دفعه، داده هاي جديد رو در اولين رديف خالي از Sheet2 بنويسيم.
برنامه نويسي ويژوال بيسيك در اكسل
درس ششم: عبارات شرطي (Conditional Statements)
يه TextBox و يه CommandButton بكشيد. حالا فرض كنيد ميخوايم در رويداد CommandButton1_Click دستوري بنويسيم كه:
«اگر TextBox1 خالي بود» آنگاه «پيغام Invalid Data بدهد» در غير اين صورت «محتواي TB1 را به خانه A1 انتقال دهد».
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
همونطور كه مي بينيد هر عبارت شرطي از سه قسمت زير تشكيل شده:
1- اگر... (تست منطقي) (Logical Test)
2- آنگاه... (بخش مثبت) (TruePart)
3- در غير اين صورت ... (بخش منفي) (FalsePart)
كه توي برنامه نويسي، عبارت شرطي بالا رو به اين صورت مي نويسيم:
(تذكر: براي نمايش پيغام خطا بايد از دستور MsgBox استفاده كنيم)
خوب!کد:If TextBox1.Text = "" Then
MsgBox("Invalid Data")
Else
Me.Cells(1,1).Value = TextBox1.Text
End If
حالا اين دستور رو توي رويدادي كه گفتم بگذاريد و ببينيد درست كار مي كنه يا نه؟
اگه درست كار مي كرد، به سوال زير جواب بديد:
برنامه اي بنويسيد كه
«اگر در TB1 عبارت Ali نوشته شده بود» آنگاه «پيغام Invalid Data بدهد» در غير اين صورت «محتواي TB1 را به خانه A2 منتقل كند».
بسيار خوب!
حالا كي مي تونه اين سوال رو جواب بده؟
برنامه اي بنويسيد كه
«اگر مقدار عددي TB1 بزرگتر از 20 بود» آنگاه «پيغام Invalid Data بدهد» در غير اين صورت «مقدار عددي TB1 را در خانه A3 بنويسد»
راهنمايي: براي به دست آوردن مقدار عددي يك TB بايد از دستور ( Val(TextBox1.Text استفاده كنيم.
اقا جواد گل
خیلی ممنون واقعا عالی است فقط یک سوال
ایا منبع فارسی برای اموزش Vba سراغ داری ؟
منبعي كه به صورت كتاب باشه سراغ ندارم.نقل قول:
اما منابع اينترنتي موجود هست:
کد:http://www.google.com/search?sourceid=navclient&ie=UTF-8&rls=AMSA,AMSA:2007-33,AMSA:en&q=%D8%A2%D9%85%D9%88%D8%B2%D8%B4+VBA
لطف کردی خیلی ممنون
سلام دوستان من برای فرمول نویسی تو اکسل یه آموزش میخام البته در سطح پایینش رو بلدم ولی فرمول نویسهای مثلا شرطی رو زیاد وارد نیستم اگه یه راهنما با مثال دارید لطفا بزارید
در ضمن یه سوال acsess تو مایکروسافت آفیس برای انجام چه کارهایی هست از اون هم آموزشی داریئ که یاد بگیرم
ممنونم ازتون
سلام
فرض كنيد كه دو تا جدول دارم ( جدول 1 و جدول 2 )
حالا ميخواهيم اين دو تا جدول را با هم تركيب كنيم به طوري كه در نهايت جدول 3 به وجود بياد . اطلاعات هم بايد با هم منطبق باشند ( يعني رديف ، نام ، نام خانوادگي بايد طبق جدول هاي 1 و 2 ) باشه .
لينك عكس : [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
سلامنقل قول:
خب اين كه خيلي ساده است با يه VLookup ساده قابل انجامه
اگه توضيح بيشتر ميخواي بگو
باي
بله ، بي زحمت بيشتر توضيح بدهيد ...نقل قول:
فكر كنم جواب هر دو سوالتون رو توي پست اول همين تاپيك در قسمت فهرست مطالب بتونيد پيدا كنيد.نقل قول:
هم آموزش فرمول نويسي شرطي هست هم آموزش Access. البته اون آموزش Access يه خورده ساده است. انتظار زيادي ازش نداشته باشيد ولي با طرح سوالات حرفه اي، پاسخ هاي حرفه اي هم خود به خود خواهند آمد.
من منظور شما رو درست متوجه نشدم.نقل قول:
اگه منظورتون همونيه كه از عكس فهميدم يعني اين كه :
يك يا چند ستون از يك جدول رو كنار ستون هاي جدول ديگر بگذاريم.
اين كار يه Copy/Paste ساده هست. ستون هاي دلخواه رو با كليك روي سر ستون انتخاب كرده، روي يكي از اونها راست كليك و گزينه Copy رو مي زنيم. بعد هم در قسمت دلخواه از جدول دوم، روي سر ستون راست كليك و گزينه Insert Copied Cells رو مي زنيم.
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
نقل قول:
نوشته شده توسط mehdi_7070
سلام
فرض كنيد كه دو تا جدول دارم ( جدول 1 و جدول 2 )
حالا ميخواهيم اين دو تا جدول را با هم تركيب كنيم به طوري كه در نهايت جدول 3 به وجود بياد . اطلاعات هم بايد با هم منطبق باشند ( يعني رديف ، نام ، نام خانوادگي بايد طبق جدول هاي 1 و 2 ) باشه .
لينك عكس : [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
سلام
سوال شما را روي مثال خودتان توضيح ميدهم
در ضمن مي توانيد با مراجعه به help خود اكسل نيز به توضيحات بيشتر دسترسي پيدا كنيد
تابع VLOOKUP : اين تابع به جستجو در ستون اول محدوده ديتاي شما پرداخته و پس از پيدا كردن مقدار موردنظر ، مقدار متناظر ان را از ستوني كه شما مشخص ميكنيد برميگرداند
در مثال شما :
فرض كنيد ستون C از جدول شماره 3 فاقد مقدار بوده و نياز است تا مقدار معادل عدد 163001 از جدول 2 در ان وارد گردد پس بايد جهت خانه C2 جدول 3 فرمول نوشته شود.
محدوده انتخاب از A1 تا B7 جدول شماره 2 بوده كه پس از پيدا شدن ان خانه مقدار متناظر ان در ستون B مقدار AA برميگردد
فرمولي كه در جدول شماره 1 و در خانه C1 بايد نوشته شود اين است :
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
پس از زدن fx در خانه مربوطه شكل بالا ظاهر ميگردد كه مقادري ان طبق زير پر مي گردد:
مقدار LOOKUP_VALUE : خانه A2 از جدول 3
مقدار TABLE_ARRAY : محدوده A2:B7 از جدول 2
مقدار COL_INDEX_NUM : عدد 2
مقدار RANGE_LOOKUP : در اين قسمت FALSE وارد ميگردد
توضيحات مطابق مقادير بالا:
ميخواهيم مقدار متناظر عدد فلان از ستون اول (مقدار LOOKUP_VALUE : خانه A2 از جدول 3) را در محدوده فلان (مقدار TABLE_ARRAY : محدوده A2:B7 از جدول 2) از ستون دوم (مقدار COL_INDEX_NUM : عدد 2 براي ستون 2)
را پيدا كنيم
نكته: اگر مقدار RANGE_LOOKUP برابر FALSE باشد دقيقا دنبال عدد مورد نظر مي گردد و اگر پيدا نكرد متناظري برنميگرداند و خطا ميدهد ولي اگر TRUE باشد دنبال بزرگترين عددي كه از آن كوچكتر است ميگردد و متناظر ان را برمي گرداند
البته توي عكس هم مشخصه اگه روي Help On This Function كليك كني كمك ميكنه بهت
نمي دونم تونستم مطلب رو انتقال بدم يا نه
بازم اگه سوالي بودم من هستم
خوش باشي
javad2625 جان !
Copy/Paste تنها نيست . داده ها بايد با هم منطبق باشند .
wordist جان !
توضيحاتتون بسيار دقيق و كامل بود . بسيار ممنون و متشكر ...
فقط يك چيز ديگه مونده . فرمول شد اين :
=VLOOKUP(A2,H2:I126,2,FALSE)
زماني كه به يك Cell ديگه كپي مي كنم ، مقادير به طور خودكار جايگزين مي شوند .
سوالم اين هست كه چه جوري اين فرمول را براي همه سلول هاي يك ستون بنويسم كه مجبور نباشم مدام سلول را كپي كنم .
با تشكر ـ مهدي :)
سلامنقل قول:
اين كار هم راحته
كافيه شما فرمول رو بنويسي براي اون خانه و سپس اون مربع خيلي كوچيك مشكي پايين و سمت چپ اون خونه رو كه اگه مواس بره روش شكل بعلاوه مشكي ميشه رو بكشي به سمت پايين
نكته خيلي مهم : اگه از اين روش استفاده كردي بايد فرمول رو تغيير بدي و بجاي H2:I126 بنويسي H$H$2:$I$126
یه سوال دارم.من می خوام یه دیکشنری توی بابیلون بسازم.می دونم یه برنامه داره که باید از سایت babylon دانلود کرد.من این کار رو کردم.یه قسمتی داره که باید کلمات رو بهش بدی که توش نوشته که این کار رو می تونی از طریق برنامه اکسل انجام بدی.کسی می دونه باید توی برنامه اکسل کلمات و معانی متناظر رو چطوری بنویسیم تا برنامه بتونه اینا رو بفهمه
wordist جان!
بازم ازت ممنونم
موفق باشيد :)
من نمي دونم. ولي فكر كنم بدون داشتن نمونه نشه فهميد. شما نمونه عملي از فايل هاي excel ديكشنري بابيلون نداري؟
سلامنقل قول:
اگه دوست داشتي لينك برنامهاي كه دانلود كردي رو بذار تا ببينم ميتونم كمكي بكنم يا نه
شايد از تو خود برنامه بشه يه چيزهايي فهميد
خسته نباشيد من دو سه تا شيت از جداول دارم مي خواهم با استفاده از يک دستور يا فرمول رديفهايي که مثلا جلوي آنها Ok نوشتم يا هر شرط ديگه اي را برايم بياورد و دقيقا همانجا در شيت مورد نظر قرار بده مثلا نام زير نام در شيت جديد نام خانوادگي و .... از شيتهاي مختلف با شرط بردارد و تمام يا قسمتي از آن رديف را در شيت مورد نظر بياورد.
ممنون و با تشکر
نمي دونم منظور رو درست گرفتم يا نه. ولي ببين درست ميگم؟نقل قول:
مثلاً در Sheet1 ستون A نام افراد هست (علي، حسن، حسين، سجاد)
در همون شيت ستون B جلوي بعضي از اسم ها كلمه OK نوشته شده.
حالا ميخواي اون اسم هايي از ستون A كه جلوشون كلمه OK هست در ستون A از Sheet2 نوشته بشن.
براي اين كار،
ابتدا با فرمول نويسي، ستون A از Sheet2 رو دقيقاً معادل و مساوي ستون A از شيت 1 مي كنيد.
ستون B از Sheet2 رو هم معادل ستون B از Sheet1 مي كنيد.
بعد روي Data> Filter> AutoFilter كليك كرده و در منوي كشويي كه بالاي ستون B ايجاد ميشه گزينه OK رو كليك مي كنيد. همه فيلدهايي كه ستون B اونها چيزي غير از OK باشه حذف ميشن.
اين يه مثال ساده بود.
حالا منظور شما همين هست يا چيز ديگه/