Dansk Regneark Forum
  Hjælp Hjælp  Søg i forum   Arrangementer   Opret ny bruger Opret ny bruger  Log ind Log ind


Emne lukketTal i stedet for tekst

 Besvar Besvar
Forfatter
Soeren50 Se dropdown
Bronze bruger
Bronze bruger
Avatar

Medlem: 13.Aug.2015
Land: Danamrk
Status: Offline
Point: 80
Direkte link til dette indlæg Emne: Tal i stedet for tekst
    Sendt: 15.Jul.2023 kl. 10:26
Hvor i denne VBA skal jeg få tal i de kolonner der skal inde holde både positive og negative tal?

Private Function findKontonavn(kontonr As Long) As String
    Dim rng As Range
    
    'finder ud af hvor kontonr. står
    Set rng = Ark2.Range("A:A").Find(What:=kontonr, lookat:=xlWhole)
    
    'Tjekker om der rent faktisk blev fundet noget
    If Not rng Is Nothing Then
        'Retunerer værdien fra cellen ved siden af (altså beskrivelsen)
        findKontonavn = rng.Offset(0, 1).Value
    Else
        'Hvis der ikke bliver fundet noget
        MsgBox "Der blev ikke fundet nogen konto, med kontonr " & kontonr, vbOKOnly + vbCritical, "Ingen konto fundet"
        findKontonavn = vbNullString
        Exit Function
    End If
End Function





'Subroutinen hedder altid UserForm_Initialize uanset hvad du har navnet userformen :-)
Private Sub UserForm_Initialize()
    Dim kontonr As Variant

    'Tilføjer Kontonummerne til Comboxen. Tilføjer alle de kontonr. som står i arket kontoPlan
    For Each kontonr In Ark2.Range("d2", Ark2.Range("d2").End(xlDown))
        cmbKonto.AddItem kontonr
    Next kontonr
    
    'Sætter Standardteksterne
    tbDato.Value = ""
    tbTekst.Value = ""
    tbUdgift.Value = ""
    tbIndtaegt.Value = ""
    tbloenindtaegt.Value = ""
    tboverfoersel_mellem_konti.Value = ""
    tbandenindtaegt.Value = ""
    tbkost.Value = ""
    tbapple.Value = ""
    tbbyggemarkeder.Value = ""
    tbtelefoni_og_rep.Value = ""
    tbprofiloptik.Value = ""
    tbtandlaege.Value = ""
    tbplantecenter.Value = ""
    tbmiljoefoder.Value = ""
    tbkontant_haevninger.Value = ""
    tbtv_og_aviser.Value = ""
    tbauto_og_cykler.Value = ""
    tbrenter_og_gebyr.Value = ""
    tbmobilepay.Value = ""
    tbtil_andre.Value = ""
    tbbudget.Value = ""
    tbtoej.Value = ""
    tbmedicin.Value = ""
End Sub

Private Sub btnAfslut_Click()
'Afslutter UserFormen
Unload Me
End Sub

Private Sub cmbTilføj_Click()
    Dim NuvarrendeMaksId As Integer
    Dim NytId As Integer
    Dim NyCelle As Range

    'Aktiverer Hovedarket. "shHovedArk" er arkets kodenavn, som jeg har givet det. Det gør, at du kan ændre teksten/navnet på arket som brugeren ser uden at det påvirker koden. Smart :-)
    ' shHovedArk.Activate
    
    
    'Lidt tjek af data inden vi fortsætter
    If Not cmbKonto.ListIndex > -1 Then
        MsgBox "Du skal vælge en konto", vbOKOnly + vbCritical, "Fejl"
        Exit Sub
    End If
    
    If Not IsDate(tbDato.Value) Then
        MsgBox "Du skal skrive en gyldig dato. Format: dd-mm-åååå", vbOKOnly + vbCritical, "Fejl"
        Exit Sub
    End If
    
    If Not IsNumeric(tbIndtaegt.Value) Or Not IsNumeric(tbUdgift.Value) Then
        MsgBox "Indtægter og udgifter skal være tal", vbOKOnly + vbCritical, "Fejl"
        Exit Sub
     End If
    
    'Finder ud af hvad den nuværrende maksimale værdi af ID er.
    NuvarrendeMaksId = WorksheetFunction.Max(Range("A:A"))
    
    'Sætter det nye ID
    NytId = NuvarrendeMaksId + 1
    
    'Finder ud af hvad den næste frie celle er, hvor der skal stå ID.
    Set NyCelle = Range("A9999").End(xlUp).Offset(1, 0)
    
    'Skriver værdierne. Offset-Funktionen skal læses som. Tag cellen NyCelle, og gå 0-rækker til højre og hhv. 0,1,2,3,4,5 kolonner til højre.
    NyCelle.Offset(0, 0).Value = NytId
    NyCelle.Offset(0, 1).Value = tbfaktura.Value
    NyCelle.Offset(0, 2).Value = cmbKonto.Value
    NyCelle.Offset(0, 3).Value = tbDato.Value
    NyCelle.Offset(0, 4).Value = tbTekst.Value
    NyCelle.Offset(0, 5).Value = tbUdgift.Value
    NyCelle.Offset(0, 6).Value = tbIndtaegt.Value
    NyCelle.Offset(0, 8).Value = Textleverinsdato.Value
    NyCelle.Offset(0, 9).Value = Textbestillingsbeløb.Value
    NyCelle.Offset(0, 11).Value = tbloenindtaegt.Value
    NyCelle.Offset(0, 12).Value = tboverfoersel_mellem_konti.Value
    NyCelle.Offset(0, 13).Value = tbandenindtaegt.Value
    NyCelle.Offset(0, 14).Value = tbkost.Value
    NyCelle.Offset(0, 15).Value = tbapple.Value
    NyCelle.Offset(0, 16).Value = tbbyggemarkeder.Value
    NyCelle.Offset(0, 17).Value = tbtelefoni_og_rep.Value
    NyCelle.Offset(0, 18).Value = tbprofiloptik.Value
    NyCelle.Offset(0, 19).Value = tbtandlaege.Value
    NyCelle.Offset(0, 20).Value = tbplantecenter.Value
    NyCelle.Offset(0, 21).Value = tbmiljoefoder.Value
    NyCelle.Offset(0, 22).Value = tbkontant_haevninger.Value
    NyCelle.Offset(0, 23).Value = tbtv_og_aviser.Value
    NyCelle.Offset(0, 24).Value = tbauto_og_cykler
    NyCelle.Offset(0, 25).Value = tbrenter_og_gebyr.Value
    NyCelle.Offset(0, 26).Value = tbmobilepay.Value
    NyCelle.Offset(0, 27).Value = tbtil_andre.Value
    NyCelle.Offset(0, 28).Value = tbbudget.Value
    NyCelle.Offset(0, 29).Value = tbtoej.Value
    NyCelle.Offset(0, 30).Value = tbmedicin.Value
    
    
    'Til respons
    MsgBox "Tilføjet ny bon", vbOKOnly + vbInformation, "Tilføjet"
    
    'Gøres når alt overstående er gennemkørt
    NulstilAlleFelter
End Sub

Private Sub NulstilAlleFelter()
    cmbKonto.ListIndex = -1 ' Nulstiller comboboxen. Hvis sættes til 0, da vælges det første item i listen, 1 vælges det 2. item osv.

    
    'Nulstiller alle felter
    tbfaktura.Value = ""
    tbDato.Value = ""
    tbTekst.Value = ""
    tbUdgift.Value = ""
    tbIndtaegt.Value = ""
    ' Textleveringsdato.Value = ""
    ' Textbestillingsbeløb.Value = ""
    tbloenindtaegt.Value = ""
    tboverfoersel_mellem_konti.Value = ""
    tbandenindtaegt.Value = ""
    tbkost.Value = ""
    tbapple.Value = ""
    tbbyggemarkeder.Value = ""
    tbtelefoni_og_rep.Value = ""
    tbprofiloptik.Value = ""
    tbtandlaege.Value = ""
    tbplantecenter.Value = ""
    tbmiljoefoder.Value = ""
    tbkontant_haevninger.Value = ""
    tbtv_og_aviser.Value = ""
    tbauto_og_cykler.Value = ""
    tbrenter_og_gebyr.Value = ""
    tbmobilepay.Value = ""
    tbtil_andre.Value = ""
    tbbudget.Value = ""
    tbtoej.Value = ""
    tbmedicin.Value = ""
        
    
       
    End Sub
    

Med venlig hilsen
Søren Hansen
Til top



Til top
 Besvar Besvar

Skift forum Forum tilladelser Se dropdown

© 2010 - 2024 Dansk Regneark Forum - en del af Excel-regneark.dk