سوال؛ جمع کردن یک خانه از چند فایل اکسل

Collapse
X
 
  • زمان
  • نمایش
حذف همه
new posts
  • hamed2relax
    • 2015/10/24
    • 1

    سوال؛ جمع کردن یک خانه از چند فایل اکسل

    اول از همه معذرت می خوام اگر سوالم رو جای اشتباهی مطرح کردم. نمی دونستم کجا باید سوالم رو بپرسم چون تازه عضو شدم.

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

    منظور اینکه من می خوام مجموع اعدادی که در خانه c1 فایل های 01 تا 31 من هستند، در یکی از سلول های فایلی به نام total ببرم ولی خوب نمیشه. امیدوارم منظور رو رسونده باشم. باید هم بگم که این کار ها رو بین شیت ها بلدم انجام بدم ولی نمی تونم چند فایل رو به هم لینک کنم. راهی براش هست؟!

    با تشکر
  • amir_ts

    • 2015/03/17
    • 1247

    #2
    با سلام
    کد PHP:
    =SUM(Sheet1:Sheet31!C1
    به جای نام sheet 1 نام صفحه اول (01) و به جای نام sheet31 صفحه آخر (31) رو بنویسید.
    [SIZE=7][B][COLOR=navy][FONT=IranNastaliq]ای برادر تو همه اندیشه ای[/FONT][/COLOR][/B][/SIZE]

    کامنت

    • iranweld

      • 2015/03/29
      • 3341

      #3
      با سلام

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

      کد PHP:
      Sub test()

      Sum 0

      For Each Sheet In Worksheets

      If Sheet.Name <> "total" Then

      Sum 
      Sum Sheet.Range("c1").Value

      End 
      If

      Next
      Sheets
      ("total").Range("a1").Value Sum

      Sheets
      ("total").Select

      End Sub 

      کامنت

      • abootorab

        • 2014/10/17
        • 351

        #4
        نوشته اصلی توسط hamed2relax
        اول از همه معذرت می خوام اگر سوالم رو جای اشتباهی مطرح کردم. نمی دونستم کجا باید سوالم رو بپرسم چون تازه عضو شدم.

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

        منظور اینکه من می خوام مجموع اعدادی که در خانه c1 فایل های 01 تا 31 من هستند، در یکی از سلول های فایلی به نام total ببرم ولی خوب نمیشه. امیدوارم منظور رو رسونده باشم. باید هم بگم که این کار ها رو بین شیت ها بلدم انجام بدم ولی نمی تونم چند فایل رو به هم لینک کنم. راهی براش هست؟!

        با تشکر
        با درود
        دوست عزیز اگر با vb آشنایی دارید کد زیر را در رویداد Workbook_Open فایل total قرار دهید.
        در کد زیر به جای کلمه Source نام شیتی از فایلهاتون (1 تا 31) که قراره مقادیر سلول C1 را جمع بزند بنویسید و همچنین به جای کلمه Target نام شیتی از فایل total که قراره جمع مقادیر C1 ها درون آن قرار بگیرد بنویسید.

        نکته: در تمامی فایل ها (1 تا 31) می بایست نام شیتی که قرار است مقدار C1 از آن خوانده و جمع زده شود یکسان باشد.
        کد PHP:
        Private Sub Workbook_Open()
            
        Dim FileNameXls As String, fn As Integer
            Dim wb 
        As Workbook

            Application
        .ScreenUpdating False
            Application
        .EnableEvents False

            ThisWorkbook
        .Sheets("Sheet1").Range("C1") = ""
            
        FileNameXls Dir(ActiveWorkbook.Path "\*.xls*")
            Do While 
        Len(FileNameXls) <> 0
                
        fn = Val(Mid(FileNameXls1InStr(1FileNameXls".") - 1))
                If fn >= 
        And fn <= 31 Then
                    Set wb 
        Workbooks.Open(ActiveWorkbook.Path "\" & FileNameXls)
                    wb.Worksheets("
        Source").Range("C1").Copy
                    ThisWorkbook.Sheets("
        Target").Range("C1").PasteSpecial Paste:=xlPasteValues, _
                            Operation:=xlAdd, SkipBlanks:=True, Transpose:=False
                    wb.Close SaveChanges:=False
                End If
                FileNameXls = Dir
            Loop

            Application.CutCopyMode = False
            Application.ScreenUpdating = True
            Application.EnableEvents = True
        End Sub 

        کامنت

        چند لحظه..