Avatar billede freakie Nybegynder
29. juni 2006 - 17:33 Der er 20 kommentarer

Sammentælling af celler med forskellige værdier og dialogboks

Hej,

Jeg er ved at lave et lønafregning men er kommet i problemer.
Min idé var at kunne oprette, indskrive, hente, lave noter, gemme i nyt filnavn. Til sidst skulle den kunne lave en fil der opsamler timerne til en faktura.
Jeg er flad og har opgivet efter i 3 1/4 mdr. at have forsøgt løst dette.

1. Jeg har opgivet at lave en "dialogboks" til indtastning samt at kunne gemme dem på http://www.safe-care.dk/Screendump.html
Login: screen
Password: eksperten

Mit ønske var at kunne indtaste flg.:
1. Kunde
2. Kundenummer
3. Lønmodtager
4. Lønmodtagernummer
5. Dato start
6. Dato slut

Den anden del af opgaven er med flg. konstanter.
Celle D10 onshor timer = indtast timer
Celle F10 offshor timer = indtast timer
Celle H10 kørsel timer = indtast timer

Celle I10 Total timer = sum(D10;F10;H10)
For så vidt ok.

Her mit problem:
1. sammentælling i celle J10, skal tælle cellerne samme men gange med de rigtige prise i hver af cellen D10, F10 eller H10.
Det sker at der er time i alle kategorier.

/freakie
Avatar billede freakie Nybegynder
29. juni 2006 - 17:51 #1
Har fjernet login og password!
Avatar billede brynil Nybegynder
29. juni 2006 - 18:16 #2
Hvordan angives værdien for timer, for du arbejder vel ikke kun med hele timer?
Avatar billede brynil Nybegynder
29. juni 2006 - 18:56 #3
Du kan jo prøve med denne i J10, men cellerne skal være formateret korrekt:

=(D10*24*C10)+(F10*24*E10)+(H10*24*G10)
Avatar billede freakie Nybegynder
29. juni 2006 - 19:00 #4
Det viker ikke. De 24 du indikere, er det 24 timer...?
Jeg har ikke problemer på dette felt.
Problemet er at celle H10 skal kende forskel på priserne i hhv. A10, C10 og E10 ved sammentælling i celle H10.
Avatar billede freakie Nybegynder
29. juni 2006 - 19:03 #5
Jeg kan løse det når der kun er 2 priser jeg skal regne med men når jeg skal over i 3 eller flere, så driller det.
Ved to celleberegninger har jeg brugt denne formel:
=HVIS(B6<>0;A6*G6;C6*G6) - Det virke fint meeen med flere priser, så driller det...
Avatar billede freakie Nybegynder
29. juni 2006 - 19:05 #6
UPS!!!
=HVIS(D10<>0;C10*I10;E10*I10)
Avatar billede brynil Nybegynder
29. juni 2006 - 19:17 #7
Jeg er ikke med på, hvad du vil frem til!
Avatar billede freakie Nybegynder
29. juni 2006 - 19:30 #8
Jeg skal bruge summen i celle J10 af f.eks.:
Onshore: 100 DKK x 5 timer = 500,00 DKK
Offshore: 150 DKK x 5 timer = 750,00 DKK
Kørsel: 102 x 3 timer = 306,00 DKK

Sammentælling i celle I10, er ikke vigtig men kun til senere sammensætning af hhv. celle D20 hvor =HVIS(D17>48;48;D17) - 48 er maks antal timer der må arbejdes.
Alt derover er akkordoverskud.
Avatar billede freakie Nybegynder
29. juni 2006 - 19:32 #9
Jeg skal bruge summen i celle J10 af f.eks.:
Onshore: 100 DKK x 5 timer = 500,00 DKK
Offshore: 150 DKK x 5 timer = 750,00 DKK
Kørsel: 102 x 3 timer = 306,00 DKK

Celle J10 =sum(500+750+306) Dette skal kunne sættes ind som formel og udregnes uden at der tilføjes en mellemregning.

Sammentælling i celle I10, er ikke vigtig men kun til senere sammensætning af hhv. celle D20 hvor =HVIS(D17>48;48;D17) - 48 er maks antal timer der må arbejdes.
Alt derover er akkordoverskud.
Avatar billede brynil Nybegynder
29. juni 2006 - 19:53 #10
Dvs. svaret på mit spørgsmål 18:16:03 er, at du kun anvender hele timer!?

Så kan du nøjes med denne:

=(D10*C10)+(F10*E10)+(H10*G10)
Avatar billede freakie Nybegynder
29. juni 2006 - 20:08 #11
Jeg ser at det er en simpel formel og har åbenbart været for langt nede i andre ting men du har ret. Det er naturligvis formlen.
Jeg husker ikke længere hvorfor jeg vil bruge "HVIS" - udsagnet...
Du har løst første del af mit problem men det andet er ikke så nemt.

Dialogboksen. Kan du også klare den...?
Avatar billede brynil Nybegynder
29. juni 2006 - 20:17 #12
Kigger lige på det!
Avatar billede brynil Nybegynder
29. juni 2006 - 20:29 #13
Helt simpelt, kan det se således ud:

Opret en UserForm
Tilføj 6 textboxe og en CommandButton

Koden eksekveres fra CommandButton og kan se således ud:

Private Sub CommandButton1_Click()
    Range("D2").Value = TextBox1.Text ' k-navn
    Range("I2").Value = TextBox2.Text ' k-nr
    Range("D4").Value = TextBox3.Text ' l-navn
    Range("I4").Value = TextBox4.Text ' l-nr
    Range("D6").Value = TextBox5.Text ' datostart
    Range("G6").Value = TextBox6.Text ' datoslut
End Sub

Hvis du vil starte UserForm samtidig med at du åbner arket, kan du placere denne i ThisWorkbook:

Private Sub Workbook_Open()
    UserForm1.Show
End Sub

Du kan starte UserFormen på forskellige måder. Og tilpasse formen iøvrigt.
Avatar billede brynil Nybegynder
29. juni 2006 - 20:47 #14
Du kan fx. placere 2 tekstbokse et passende sted på arket og tilknytte makroer til dem.

I et modul har du skrevet to sub's:

Sub VisForm()
    UserForm1.Show
End Sub

Sub LukForm()
    UserForm1.Hide
End Sub

Fra værktøjslinien Tegning laver du 2 tekstbokse. Skriv hhv. Åben form og Luk form eller hvad du nu ønsker skal stå i dem.

Højreklik på hver af tekstboksene og vælg Tildel makro.. og vælg så en makro til hver af dem.
Avatar billede brynil Nybegynder
29. juni 2006 - 21:00 #15
Du skal lige huske at sætte en property for UserFormen:

ShowModal skal være False
Avatar billede freakie Nybegynder
29. juni 2006 - 21:11 #16
arh... jeg er ikke så kvik i den slags men jeg er ved at lære....
Kunne ikke få det til at fungere men det skylde sikkert det sidste du har tilføjet!
Ska lige "lege" lidt med det......
Avatar billede brynil Nybegynder
29. juni 2006 - 21:24 #17
Fint nok. Lære gør vi jo alle hele tiden. ;)

Jeg slukker, så skal du umiddelbart ha' hjælp så må du ha' fat i nogen andre.

Go' fornøjelse.
Avatar billede freakie Nybegynder
24. juli 2006 - 02:30 #18
Alle forsøg har til nu været forgæves.
Jeg er kommet i store problmer mht. sammentælling af cellerne D20, D21 og D22.

Sammentælling af celler D17, F17 og H17 er næsten altid større end 48 timer.
Når det sker så skal det være akkordoverskud.(F23)

Det er lykkedes mig at lave en midlertidig løsning men ved nul timer så, trækker den timer/pris fra i stedet....!?

Celle D20: =HVIS(I17>48;D17;48)
Celle D24: =HVIS(F17>=48;48;48-D20)

Jeg er kørt helt fast og har ikke en egentlig løsning længere...

Er der én der har en løsning. Jeg sender gerne filen til test...
Avatar billede freakie Nybegynder
24. juli 2006 - 02:30 #19
Se screendump...
Avatar billede brynil Nybegynder
24. juli 2006 - 16:50 #20
Du skal nok ha fat i en af formel-eksperterne og det er ikke mig.

Synes du skal lukke dette spm. (læg et svar og acceptér)og opret et nyt med fokus på dit formelproblem. Det er ikke sikkert alle relevante personer ser på ældre spørgsmål med forudgående korrespondance. :)
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester