توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : آوردن از چندين شيت در يك شيت
يك فايل اكسل دارم كه در چندين شيت (مثلا بالاي 100 شيت) در هر شيت مشخصات يك نفر مثلا نام و نام خانوادگي و ... وجود دارد
فرمولي مي خواهم كه در يك شيت همه اينها كنار هم بيايد
ضمنا اگر مثلا با استفاده از مثلا ='sheet1'!F6 بخواهم از شيت ها كپي كنم
بايد بيش از صد مرتبه در اين عبارت هم شماره شيت را تغيير دهم و هم شماره سلول را
فرمولي مي خواهم كه از تكرار اين تغيير دادن زياد جلو گيري شود
با تشكر
s.cheraghi
2012/04/24, 20:57
سلام
ی فایل براتون فرستادم
با VB نوشتم
اگه منظورتون همینه فایلتون برام بفرستین تا کدش براتون کامل کنم
http://s3.picofile.com/file/7363949351/training.xlsm.html
Javid Mokhtari
2012/04/25, 21:28
با سلام.
فایل نمونه لطفاً.%
دوستان ضمن تشکر از لطف شما
جواب من در پاسخ s.cheraghi موجود بود که برای فایل مورد نظر تغییرش دادم و حالا سوالم اینست که در ماکرو زیر چطور میتونیم 10 خط مشابه رو با یک شرط بنویسیم که از تکرار این خطوط هم جلوگیری بشه؟
Sub assas()
For i = 2 To Application.Sheets.Count
Sheets("sheet1").Range("a1").Offset(i - 1, 0) = i
Sheets("sheet1").Range("b1").Offset(i - 1, 0) = Sheets(i).Range("a1").Value
Sheets("sheet1").Range("b1").Offset(i - 1, 1) = Sheets(i).Range("b1").Value
Sheets("sheet1").Range("b1").Offset(i - 1, 2) = Sheets(i).Range("c1").Value
Sheets("sheet1").Range("b1").Offset(i - 1, 3) = Sheets(i).Range("d1").Value
Sheets("sheet1").Range("b1").Offset(i - 1, 4) = Sheets(i).Range("e1").Value
Sheets("sheet1").Range("b1").Offset(i - 1, 5) = Sheets(i).Range("f1").Value
Sheets("sheet1").Range("b1").Offset(i - 1, 6) = Sheets(i).Range("g1").Value
Sheets("sheet1").Range("b1").Offset(i - 1, 7) = Sheets(i).Range("h1").Value
Sheets("sheet1").Range("b1").Offset(i - 1, 8) = Sheets(i).Range("i1").Value
Sheets("sheet1").Range("b1").Offset(i - 1, 9) = Sheets(i).Range("j1").Value
Next i
End Sub
s.cheraghi
2012/04/26, 14:09
با سلام
لازم به ذکر است هدف از کاهش تعداد سطرهای نوشته شده متعدد می باشد:
1- کاهش زمان اجرای برنامه
2- افزایش خوانایی و درک بهتر کدهای نوشته شده
کاهش تعداد سطرهای نوشته شده در هر کد الزاما پیچیدگی زمان حل برنامه را به اندازه چشمگیر کاهش نمی دهد
عواملی که باعث افزایش پیچیدگی زمانی در برنامه ها می شود، حلقه هایی مثل For،While... می باشد.
که در صورت کاهش این حلقه ها کمک شایانی در کاهش زمان مصرف شده خواهد شد
اما تلاتش جهت تبدیل چندین سطر به سطرهای کمتر جهت یادگیری بسیار مفید می باشد.
هدف کد شما این بوده که سطرهای اول در Sheet های دیگر را در Sheet1 و در جلوی شماره نوشته شده در Sheet1 بنویسید
جهت کاهش کد شما از لحاظ اندازه می توان از کد زیر استفاده کرد:
Sub saman()
Sheet1.Cells.ClearContents
For i = 2 To Application.Sheets.Count
Sheet1.Range("a1").Offset(i - 1, 0) = i
Sheets(i).UsedRange.Copy Destination:=Sheet1.Range("b1").Offset(i - 1, 0)
Next i
End Sub
در صورت سوال در خدمت هستم
ضمن تشكر از شما
نمونه فايل مورد نظر:
http://hamandishinews.com/links/artforms-2012-04-28-macro.xls
مي خواهيم محتواي ستون F5 تا F17 همه شيت ها در يك جدول بيايد
- يك مشكل اين است كه نام شيت ها فارسي است
- مسئله ديگر اين است كه مثلا در شيت دوم چون اطلاعاتش كامل وارد نشده، اطلاعاتش يك فيلد كمتر از شيت اول است، اما مي خواهيم محتواي هر فيلد در ستون متناظر خودش بيايد يعني محتواي همه ARTF_MULTI_JUSERNAME ها در ستون 16 بيايد
s.cheraghi
2012/04/28, 19:14
با سلام
متأسفانه لینک مورد نظر خراب می باشد
اصلاح بفرمائید
ممنون
متأسفانه لینک مورد نظر ---اب می باشد
همان لينك اصلاح شد
با تشكر
s.cheraghi
2012/04/29, 13:35
با سلام
یک فایل براتون درست کردم
با وی بی نوشته شده
امیدوارم مشکلتون حل بشه
در صورت سوال در خدمتتون هستم
report (http://s3.picofile.com/file/7367994187/report.xlsm.html)
با سلام
یک فایل براتون درست کردم
report (http://s3.picofile.com/file/7367994187/report.xlsm.html)
فايل با حجم صفر بايت دانلود ميشود
s.cheraghi
2012/04/29, 16:31
لینک اصلاحی
Report (http://s3.picofile.com/file/7368184408/report.xlsm.html)
vBulletin® v4.2.5, Copyright ©2000-2024, Jelsoft Enterprises Ltd.