PNG32 PNG32 PNG32 PNG32
PNG32
Forum Excel, VBA, VSTO, Exceltips, Excelhj�lp PNG32 drivs av Excelspecialisten    Logga in     English
PNG32
PNG32 PNG32
PNG32

Logga in

PNG32

Du är inte inloggad. Logga in eller registrera dig för att skriva inlägg eller svara på inlägg.

För frågor om forumet, kontakta oss på webmaster@excelforum.se

PNG32 PNG32
PNG32 PNG32
PNG32

Excelforum

PNG32

 
ForumForumDiskussionerDiskussionerExcelExcelSöka efter passerade datumSöka efter passerade datum
Föregående Föregående
 
Nästa Nästa
Nytt inlägg
 2009-01-29 18:35
 

Jag har en Excelfil med flera (ca 50) blad, en för varje produkt, och för varje produkt finns ett bäst före datum (i samma cell på alla blad). Bladen har samma namn som produkten och även produktnamnet står i samma cell på alla blad.

Nu vill jag på något sätt göra en sökning genom alla blad för att hitta de produkter vars bäst-föredatum passerat. Funderade förs på att göra ett extra blad där jag skriver in dagens datum och staplar upp alla produkter och räknar ut bäst-föredatum - dagens datum, och på så sätt se hur lång tid alla produkter har kvar, men tyckte det skulle bli lite jobbigt då nya produkter (och blad) tillkommer hela tiden. (Eller går det att göra detta utan att precisera namnen på alla blad och antalet blad?)

Går det att söka igenom alla blad efter produkter som passerat bäst-föredatumet via ett macro? Eller finns en bättre lösning?

Nytt inlägg
 2009-01-30 08:11
 
 Ändrad av Niklas Jansson  på 2009-01-30 09:13:34

Vissa Excelfunktioner går att använda över samma cell i flera blad. Det är ganska ovanligt att man gör det, eftersom funktionen kan sluta fungera av diverse skäl, hur som helst; så här ser det ut för att summera B4 i Blad1 till Blad3:

=SUMMA(Blad1:Blad3!B4)

Det känns dock inte som att det är någon vidare lösning i det här fallet.

Ett makro är ganska smidigt. Jag vet inte hur insatt du är i VBA, men en grundprincip skulle vara:

 

Public Sub CheckWorksheets()
    Dim wb As Workbook, ws As Worksheet, wsOther as Worksheet, Count As Long
    Set wb = New Workbook
    Set ws = wb.Worksheets(1)
    Count = 1
    For Each wsOther in ThisWorkbook.Worksheets
        If wsOther.Range("A5") > Date Then
            ws.Cells(Count, 1) = wsOther.Name
            ws.Cells(Count, 2) = wsOther.Range("A5")
            Count = Count + 1
        End If
    Next
End Sub

 

Föregående Föregående
 
Nästa Nästa
ForumForumDiskussionerDiskussionerExcelExcelSöka efter passerade datumSöka efter passerade datum

PNG32 PNG32
Excelforum drivs av Excelspecialisten som bedriver utbildning i Excel och VBA, tillhandahåller support och hjälp med Excel, utvecklar program i Excel. Är ni i behov av en konsult inom Excel, VBA eller VSTO, eller söker en excelkurs, kontakta oss.
Copyright 2013 ExcelSpecialisten XLS AB   Användarvillkor  Personliga uppgifter