Avatar billede cledes Nybegynder
25. april 2008 - 13:30 Der er 8 kommentarer og
2 løsninger

Excel. beregne en værdi med 2 decimaler

Har fået svar på et indlæg og dette fungerer som det skal.. mit eneste spørgsmål er bare hvordan man ændrer const sats2 = 50 til eksempelvis 49,47.. Den melser fefl når jeg kører dette..

På forhånd tak

Claus

Se kode nedenstående, linie 3

Dim antalRæk
Const sats1 = 100          'kan ændres efter behov
Const sats2 = 50            '-"-
Public Sub beregning()
    Application.ScreenUpdating = False
   
Rem find antal rækker
    antalRæk = ActiveCell.SpecialCells(xlLastCell).Row
   
Rem gennemløb at rækker - find om TOTAL i kolonne A
    For ræk = 1 To antalRæk
        indhold = Cells(ræk, 1)
Rem findes ordet "total" i cellen
        If InStr(LCase(indhold), "total") > 0 Then
Rem indsæt formel i kolonne G (7) & I (9)
            Cells(ræk, 7).Formula = "=F" & CStr(ræk) & "*" & CStr(sats1)
            Cells(ræk, 9).Formula = "=H" & CStr(ræk) & "*" & CStr(sats2)
        End If
    Next ræk

Rem Tilpas kolonne-bredde
    Columns.AutoFit
   
    Application.ScreenUpdating = True
   
    MsgBox ("Beregning afsluttet")
End Sub
Private Sub CommandButton1_Click()
    beregning
End Sub
Avatar billede kabbak Professor
25. april 2008 - 13:37 #1
Const sats2 = 49.47
Avatar billede cledes Nybegynder
25. april 2008 - 13:41 #2
det virker ikke.. får en fejl når jeg ændrer den.

den fremhæver følgende linie

Cells(ræk, 9).Formula = "=H" & CStr(ræk) & "*" & CStr(sats2)
Avatar billede kabbak Professor
25. april 2008 - 13:47 #3
prøv

Dim antalRæk
Const sats1 As Integer = 100          'kan ændres efter behov
Const sats2 As Double = 49.47            '-"-

Public Sub beregning()
    Application.ScreenUpdating = False
 
Rem find antal rækker
    antalRæk = ActiveCell.SpecialCells(xlLastCell).Row
 
Rem gennemløb at rækker - find om TOTAL i kolonne A
    For ræk = 1 To antalRæk
        indhold = Cells(ræk, 1)
Rem findes ordet "total" i cellen
        If InStr(LCase(indhold), "total") > 0 Then
Rem indsæt formel i kolonne G (7) & I (9)
            Cells(ræk, 7).Formula = "=F" & CStr(ræk) & "*" & sats1
            Cells(ræk, 9).Formula = "=H" & CStr(ræk) & "*" & sats2
        End If
    Next ræk

Rem Tilpas kolonne-bredde
    Columns.AutoFit
 
    Application.ScreenUpdating = True
 
    MsgBox ("Beregning afsluttet")
End Sub
Private Sub CommandButton1_Click()
    beregning
End Sub
Avatar billede kabbak Professor
25. april 2008 - 13:52 #4
ret .Formula til .FormulaLocal
Avatar billede cledes Nybegynder
25. april 2008 - 13:52 #5
virkede heller ikke.. markerer samme linje igen
Avatar billede kabbak Professor
25. april 2008 - 13:55 #6
se 25/04-2008 13:52:16
Avatar billede cledes Nybegynder
25. april 2008 - 13:59 #7
Så virkede det.. Mange tak. 100 point til dig
Avatar billede kabbak Professor
25. april 2008 - 14:01 #8
du tog point selv, det må da være en fejl, ikke ;-))
Avatar billede cledes Nybegynder
28. april 2008 - 08:44 #9
Det beklager jeg.. Hvordan ændrer jeg det?
Avatar billede kabbak Professor
29. april 2008 - 11:04 #10
lav et nyt spørgsmål i samme kategori, kald den "Point til Kabbak" og sæt link til dette spørgsmål.
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
Vi har et stort udvalg af Excel kurser. Find lige det kursus der passer dig lige her.

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