07. april 2010 - 11:04Der er
16 kommentarer og 1 løsning
Statestik m. diagram over prisændringer
Hejsa,
Jeg arbejder med et excelark, hvor jeg har en masse produkter, som jeg skal holde prisændrings-statestik over. dvs at en gang om måneden skal dette regneark opdateres. jeg har lavet en ekstra kollonne som hedder STAT, hvor jeg vil lave et link i hvert produkts STAT celle, som skal videresende en til et andet ark i samme regneark, hvori hvert produkt skal have sin egen prisændrings-statestik.
i det nye ark skal der være dato og pris for pågældene dato. det skal jeg så lave et diagram over.
Det jeg har brug for er at vide, hvordan jeg laver et ark, som automatisk laver en ny celle med dato for opdatering og den nye pris, såsnart jeg ændre prisen i STAT cellen i produktoversigten. er dette muligt?
Rem Version 1 (Indsættes under arket Skærm - højreklik / Vis programkode) Rem Opdatering af diagram kan også lades sig gøre - men ... Rem =========
Dim pris As Single, vareNr As String, dato As Date Dim statRække As Long Private Sub Worksheet_Change(ByVal Target As Range) Rem der ændres i arket of mee værdi If Target.Column = 9 And Target.Value <> "" Then 'kolonne "I" (PRIS) pris = Target.Value vareNr = Range("D" & Target.Row).Text dato = Format(Now, "dd-mm-yy") statRække = findRækkeNr(vareNr, "STAT", "C:C") If statRække > 0 Then opdaterNyPris pris, dato, statRække + 2 '+2 da prislinje er 2 rækker under ID-linje Else MsgBox ("varenr " & vareNr & " kunne ikke findes i STAT") End If End If End Sub Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Target.Column = 12 Then 'kolonne L (STAT) vareNr = Range("D" & Target.Row).Text
statRække = findRækkeNr(vareNr, "STAT", "C:C") If statRække > 0 Then aktiverArk "STAT", statRække 'LINK TIL STAT Else MsgBox ("varenr " & vareNr & " kunne ikke findes i STAT") End If End If End Sub Private Function findRækkeNr(vareNr, arkNavn, område) With ActiveWorkbook.Sheets(arkNavn).Range(område) Set c = .Find(vareNr, LookIn:=xlValues, LookAt:=xlWhole) If Not c Is Nothing Then findRækkeNr = c.Row Else findRækkeNr = 0 End If End With End Function Private Sub aktiverArk(arkNavn, rækkeNr) ActiveWorkbook.Sheets(arkNavn).Activate ActiveSheet.Range("C" & CStr(rækkeNr)).Activate End Sub Private Sub opdaterNyPris(pris, dato, rækkeNr) Dim kol As Byte With ActiveWorkbook.Sheets("STAT") For kol = 1 To 240 If .Cells(rækkeNr, kol) = "" Then .Cells(rækkeNr, kol) = dato .Cells(rækkeNr + 1, kol) = pris .Columns.AutoFit Exit For End If Next kol End With End Sub
Jeg er nok lidt for grøn i excel til at forstå hvordan jeg skal idsætte det ovenstående. vil du hjælpe mig med at implentere koden i regnearket? - evt sende regnearket retur, hvis du har lavet det på det tilsendte?
Jeg har fået din mail, og det virker fortrinligt, men skal jeg indsætte programkoden som en makro? jeg har aldrig prøvet at indsætte sådanne koder i et regneark, så er på god bar bund lige nu. så hvordan insætter jeg formlem du har sendt til mig?
jeg acceptere dit svar nu. jeg har kigget på spm 905949 og synes simpelthen det kodning er vildt svært. så jeg har ikke noget held med at tilpasse koden til mit STAT ark.
jeg uddeler yderligere 60 point til dig, hvis du kan hjælpe mig med den diagram opgaven
vil det være muligt at lave en link knap, som kan generere diagrammet, så det ikke er permenent i excelarket? således at man måske kan nøjes med at have et enkelt diagram for alle prisændringer?
forestil dig, at STAT arket kun har ét diagram men alle prisændringerne for samtlige varenumre. det skal kun være for at spare plads, men kan det ikke lade sig gøre, er det ok.
jeg har nemlig omkring 100 varenumre som jeg skal lave statestik over. så jeg skal bruge en 'nem' og overskuelig måde at stille STAT arket op for alle varenumre. egentlig kunne det være rigtig godt, hvis man tilføjer et nyt produkt i skærm-arket, at den så automatisk laver det nye varenummer i STAT-arket
Ok, jeg har nu sendt dig dokumentet, hvor jeg har tilføjet et ekstra ark hvori alle varer kan slås op og samlignes (jeg vil importere data fra eksternt dokument til den ene liste funktion - men der skal jeg ikke bruge statistiske oplysninger, det er kun fra den ene liste).
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.