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


Emne lukketAftaleseddel nummer

 Besvar Besvar
Forfatter
Matlock Se dropdown
Bronze bruger
Bronze bruger
Avatar

Medlem: 25.Mar.2012
Land: Danmark
Status: Offline
Point: 49
Direkte link til dette indlæg Emne: Aftaleseddel nummer
    Sendt: 20.Sep.2017 kl. 15:26
Hej Alle
så har jeg et spørsmål igen.

Bruger denne kode for at overføre mit userform data til et worksheet.

Når jeg gemmer ligger den på næste tomme linje som den skal.
Nu er det bare sådan at hvis jeg vil gemme en aftaleseddel med et nummer der allerede eksistere gemmer den også på en ny linje, hvordan får jeg den til at gemmen den redigeret aftaleseddel på den gamle linje?? altså Aftaleseddel nr.1 bliver gemt under nummer 1
    
Worksheets("Bilag B").Activate
    Range("D4").Select
    If Range("D4").Value = "" Then
        Range("D4").Activate
    Else
        Range("D4").CurrentRegion.Select
        ActiveCell.Offset(Selection.Rows.Count, 0).Activate
    End If
    With ActiveCell
        .Value = txtAftale.Text
        .Offset(0, 1).Value = txtbesk.Text
        .Offset(0, 2).Value = Range("Aftaleseddel!Ialt")
        .Offset(0, 6).Value = txtDato.Text
        .Offset(0, 7).Value = txtVare1.Text
        .Offset(0, 8).Value = txtPris1.Text
        .Offset(0, 9).Value = txtVare2.Text
        .Offset(0, 10).Value = txtPris2.Text
        .Offset(0, 11).Value = txtVare3.Text
        .Offset(0, 12).Value = txtPris3.Text
        .Offset(0, 13).Value = txtVare4.Text
        .Offset(0, 14).Value = txtPris4.Text
        .Offset(0, 15).Value = txtVare5.Text
        .Offset(0, 16).Value = txtPris5.Text
        .Offset(0, 17).Value = txtVare6.Text
        .Offset(0, 18).Value = txtPris6.Text
    End With
Til top



Til top
EXCELGAARD Se dropdown
Platin bruger
Platin bruger


Medlem: 27.Dec.2012
Land: Denmark
Status: Offline
Point: 5412
Direkte link til dette indlæg Sendt: 21.Sep.2017 kl. 09:23
Jeg ville lave det lidt anerledes...
 
Nu har jeg ikke dit regneark, så det bli'r lidt "ud af hovedet", hvor jeg antager, at aftalenummeret i dit UserForm ligger i 'txtAftale', og aftale nummeret i dit regneark står i kolonne D, og dine aftaler begynder fra og med række 4..
On Error Resume Next
Worksheets("Bilag B").Select
Dim Række As Long
Række = WorksheetFunction.Match(txtAftale.Text, Range("D:D"), 0)
If Række < 4 Then Række = Range("D" & Rows.Count).End(xlUp).Row + 1
If Række < 4 Then Række = 4
Range("D" & Række).Select
...og, herefter kan du bare indsætte dine værdier, som du gør efter
With ActiveCell ...
Bemærk, at, hvorvidt kode linjen...
WorksheetFunction.Match(txtAftale.Text, Range("D:D"), 0)
...rent faktisk finder dit aftalenummer kommer måske lidt an på, hvordan aftalenummeret bliver gemt i regnearket, da jeg kan se, at du benytter '.Text' i stedet for '.Value'.
Du kan evt. blive nødt til, at konvertere frem og tilbage mellem tekst og tal, hvis du har behov for at tingene er i tekst format.
 
Husk, at trykke på [Tak], hvis du kan lide et indlæg.
Husk, at trykke på [Accepteret Svar], hvis du kan bruge et løsningsforslag.
Til top
Matlock Se dropdown
Bronze bruger
Bronze bruger
Avatar

Medlem: 25.Mar.2012
Land: Danmark
Status: Offline
Point: 49
Direkte link til dette indlæg Sendt: 21.Sep.2017 kl. 11:50
Hej
Kan ikke få det til at virke. den gemmer udenfor side 1 på arket og erstatter ikke det gamle nummer.

Og når jeg hente aftaleseddel nummer over 4 er der fejl.

Her er filen, har slettet alle tal.

Til top
Matlock Se dropdown
Bronze bruger
Bronze bruger
Avatar

Medlem: 25.Mar.2012
Land: Danmark
Status: Offline
Point: 49
Direkte link til dette indlæg Sendt: 03.Okt.2017 kl. 10:30
Har løst problemet. Valgt at bruge “Case” og så taste hvilket cell der høre til hvert aftaleseddel nummer. Lidt meget kode da der kan være 100 aftale nummer, men virker.
Til top
Matlock Se dropdown
Bronze bruger
Bronze bruger
Avatar

Medlem: 25.Mar.2012
Land: Danmark
Status: Offline
Point: 49
Direkte link til dette indlæg Sendt: 03.Okt.2017 kl. 13:16
Fandt en ny løsning som var meget mere simpel, hvis nogen er interesseret.

 
    Worksheets("Bilag B").Activate
    Range("D3").Activate
    ActiveCell.Offset(txtAftale.Value, 0).Activate
        
        If ActiveCell.Value = "" Then
        ActiveCell.Offset(1).EntireRow.Insert
        End If
    
    With ActiveCell
        .Value = txtAftale.Text
        .Offset(0, 1).Value = txtbesk.Text
        .Offset(0, 2).Value = Range("Aftaleseddel!Ialt")
        .Offset(0, 7).Value = txtDato.Text
        .Offset(0, 8).Value = txtYdelse1.Text
        .Offset(0, 9).Value = txtPris1.Text
        .Offset(0, 10).Value = txtYdelse2.Text
        .Offset(0, 11).Value = txtPris2.Text
        .Offset(0, 12).Value = txtYdelse3.Text
        .Offset(0, 13).Value = txtPris3.Text
        .Offset(0, 14).Value = txtYdelse4.Text
        .Offset(0, 15).Value = txtPris4.Text
        .Offset(0, 16).Value = txtYdelse5.Text
        .Offset(0, 17).Value = txtPris5.Text
        .Offset(0, 18).Value = txtVare1.Text
        .Offset(0, 19).Value = txtLøn1.Text
    End With

Nu er det aftaleseddels nr. der afgøre hvor meget resultatet skal offset.
Til top
 Besvar Besvar

Skift forum Forum tilladelser Se dropdown

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