Forfatter |
Emne Søg Emne funktioner
|
Bjarne
Sølv bruger
Medlem: 17.Sep.2010
Land: Danmark
Status: Offline
Point: 300
|
Emne: at finde finde række nr. Sendt: 04.Okt.2013 kl. 16:10 |
En, men for mig, en opgave jeg ikke har kunnet løse.
Derfor vil jeg meget gerne have hjælp til at finde række nr.!
Info. & opgave;
Ark (1) Navn: ”Kskl”
Ark(2) Navn: ”Transport”
I Ark 1 skrives et heltal i
Range("G" & Target.Row og i Range("E" & Target.Row) tillægges Range("G" & Target.Row) +2
F.eks. Range("G" & Target.Row).Value = 7050 og tallet I Range("E" & Target.Row).Value = 7052
Nu skal tilsvarende tal findes I Ark 2 i Findeomraade = "A1:A100"
Dette er blevet løst, men det som er vigtigt er:
Hvilken Row no. står tallet 7052 i og hvordan finder jeg det?
Colonne no. som skal bruget står i ark1 ”H3” F.eks. 10 svarende til oktober.
Når jeg så har ”Row nr. og Colonne no. Skal det sammensættes til f.eks. ”H63”
|
//Bjarne
|
|
|
|
|
EXCELGAARD
Platin bruger
Medlem: 27.Dec.2012
Land: Denmark
Status: Offline
Point: 5419
|
Sendt: 04.Okt.2013 kl. 19:16 |
Løsningen kommer lidt an på, hvilken metode har du benyttet til at finde frem til tallet?
|
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.
|
|
Bjarne
Sølv bruger
Medlem: 17.Sep.2010
Land: Danmark
Status: Offline
Point: 300
|
Sendt: 07.Okt.2013 kl. 09:47 |
Hej Excelgaard,
Dejligt med en sparringes person, har måtte gennemgå hele program konceptet og brugt weekenden til at ændre hele programmet. Det hjælper hver gang du spørger om noget.
Forsøger her, at vise / beskrive metoden efter program ændringen:
Dim L1 As Variant
Dim c As Variant ' tæller
Dim KL As Variant ' kolonne nr.
Dim RK As Variant ' konto nr. i Ark "Kskl" Range("J" & Target.Row)
On Error Resume Next
'talværdi i _ +4 _ Angiver kolonne navn
' Kskl L1
If L1.Value = 4 Then KL = "E" '” januar”
If L1.Value = 5 Then KL = "F" '” februar”
If L1.Value = 6 Then KL = "G" '” marts”
If L1.Value = 7 Then KL = "H" '” april"
If L1.Value = 8 Then KL = "I" '” maj"
If L1.Value = 9 Then KL = "J" '” juni"
If L1.Value = 10 Then KL = "K" '” juli"
If L1.Value = 11 Then KL = "L" '” august"
If L1.Value = 12 Then KL = "M" '”september"
If L1.Value = 13 Then KL = "N" '” oktober"
If L1.Value = 14 Then KL = "O" '” november"
If L1.Value = 15 Then KL = "P" '” december"
Findeomraade = "A1:A100" ' kolonne hvor alle konto nr. står i de respektive ark (ArkNavn)
Dim Kskl As String '"Ark Kasseklade"
Dim BE As Variant ' Beløb i "Ark Kasseklade" Range("D" & Target.Row).Value
Dim MK As Variant ' Modkonto nr.
KL = Range("L1").Value 'Kolonne tal i "Kskl" Range "L1" (f.eks.; ”N” = oktober)
MK = Range("J" & Target.Row).Value 'Modkonto nr. i "Kskl" Range "J1" (f.eks.; 7052)
BE = Range("D" & Target.Row).Value ' indtastet beløb i Ark "Kskl" (f.eks.; 500,00)
For Each c In Sheets(ArkNavn).Range(Findeomraade).Cells
If MK = c.Value Then
Sheets(ArkNavn).Activate
Sheets(ArkNavn).Range(c.Address).Select
'I realiteten skal der ikke anvendes "Select" men kun finde den rigtige række hvor konto nummeret står.
for derefter at finde den rigtige kolonne "KL" (e.ks. kolonne N svarende til okt.)
Når række og kolonne er stedfæstet som f.eks. celle”N43”
tillægges værdien ”BE” . (Sheets(Kskl).Range("D" & Target.Row)
Exit Sub
End If
Next c
ActiveSheet.Protect
' Når værdierne er lagt sammen vendes tilbage til Sheets(Kskl).Range("K" & Target.Row).Select
End Sub
Er dette beskrivende?
Håber du vender tilbage med yderlige spørgsmål / svar.
|
//Bjarne
|
|
EXCELGAARD
Platin bruger
Medlem: 27.Dec.2012
Land: Denmark
Status: Offline
Point: 5419
|
Sendt: 07.Okt.2013 kl. 11:10 |
Uha, der er flere ting i den kode der, jeg ville gøre MEGET anderledes - f.eks. ville jeg ALDRIG sætte alle mine variabler til 'Variant' - det gør både koden mere sårbar overfor fejl, gør kodeafviklingen meget langsommere, og optager betydeligt mere hukommelse... ...for ikke at nævne, at det ligesom ødelægger hele ideen med at deklarerer sine variabler! Men, løsningen på dit spørgsmål er, at i det loop, hvor du leder efter kontonummeret...
For Each c In Sheets(ArkNavn).Range(Findeomraade).Cells If MK = c.Value Then Sheets(ArkNavn).Activate Sheets(ArkNavn).Range(c.Address).Select End If Next |
...må den rette række være
Men, ellers er der MASSER as muligheder for optimering i den kode der! F.eks. behøver du ikke en If-sætning for at finde, hver måneds kolonne - en enkel kodelinje kan gøre det:
KL = Replace(Cells(1, L1.Value + 4).Address(False, False), 1, vbNullString) |
|
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.
|
|
Bjarne
Sølv bruger
Medlem: 17.Sep.2010
Land: Danmark
Status: Offline
Point: 300
|
Sendt: 07.Okt.2013 kl. 12:24 |
Har fjernet alle if sætninger for hver måneds kolonne - og sat din kodelinje ind.
Har ændret i;
For Each c In Sheets(ArkNavn).Range(Findeomraade).Cells If MK = c.Value Then Sheets(ArkNavn).Activate Sheets(ArkNavn).Range "KL(c.Row)"
Sheets(ArkNavn).Range "KL(c.Row)".value = Sheets(ArkNavn).Range "KL(c.Row)".value + BE
End if
Next
Sheets(Kskl).Range("K" & Target.Row).Select
Desværre uden effekt da curser stiller sig som før ved Select i kolonne A og i det rigtige konto nr.
Har jeg forstået dit svar rigtigt?
Du skriver heldigvis, at der er MASSER af muligheder for optimering i den kode, jeg derfor ligger jeg på mine grædende knæ og håbe på, at du vil hjælpe mig med det og skrive det rigtige.
|
//Bjarne
|
|
EXCELGAARD
Platin bruger
Medlem: 27.Dec.2012
Land: Denmark
Status: Offline
Point: 5419
|
Sendt: 07.Okt.2013 kl. 13:06 |
Det er nærmest umuligt, at optimerer en kodestump, der er udtrukket af et større projekt, men alene det, at du har fået kogt 12 linjer ned til en linje er da en begyndelse - og, hvis du dernæst deklarerer dine variabler korrekt, så er du nået langt :-) Og, du benytter 'c.Row' forkert, så derfor virker det ikke! Igen, er det lidt svært, at se, hvor og hvordan, du bruger dine værdier og variabler, men denne linje...
Sheets(ArkNavn).Range "KL(c.Row)".value = Sheets(ArkNavn).Range "KL(c.Row)".value + BE |
...skal (måske) nok snarere se således ud:
Sheets(ArkNavn).Range(KL & c.Row).value = Sheets(ArkNavn).Range(KL & c.Row).value + BE |
Jeg skriver 'måske' fordi det dermed ser ud som om du blot opdaterer samme celle med endnu en værdi - men dette er måske også meningen??? Under alle omstændigheder burde du nu have en ide om, hvordan du bruger KL & c.Row i din kode.
|
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.
|
|
Bjarne
Sølv bruger
Medlem: 17.Sep.2010
Land: Danmark
Status: Offline
Point: 300
|
Sendt: 07.Okt.2013 kl. 15:03 |
Dette er virkelig spændende og meget positivt.
Du har ret i at jeg nu burde have en ide om, hvordan jeg bruger KL & c.Row i din kode.
Er dette den rigtige formulering: Sheets(ArkNavn).Range(KL & c.Row)?
Ellers kan jeg ikke umiddelbart se hvordan jeg bruger 'c.Row' forkert
Du har ret i at jeg blot opdaterer samme celle med endnu en værdi:
F.eks. (Sheets(Kskl).Range("D" & Target.Row) skriver jeg et beløb som hidrører en faktura vedr. benzin. eks. kr. 100,00 (Hovedkonto nr. 7050)
Da dette er en udgift er modkontoen 7052
måneden er oktober og modkonto nr. er i ark Transport A1:100.
De kr. 100,00 skal overføres til modkonto dvs. i Sheets(Transport).Range "KL(c.Row)" Hvor KL er oktober og rækken er c.Row.
Desværre har jeg købt forlidt benzin og må fylde på endnu engang i samme måned, i samme hovedkonto og samme modkonto nr., men med nyt bilags nr.
Det nye beløb må derfor ikke overskrive det der står i forvejen, men kun lægge til.
Kan ikke finde ud af at deklarerer mine variabler korrekt - vil du omskrive dem for mig?
Hvis du har mod på, det vil jeg gerne sende hele VBA skrivelsen.
Med venlig hilsen
|
//Bjarne
|
|
EXCELGAARD
Platin bruger
Medlem: 27.Dec.2012
Land: Denmark
Status: Offline
Point: 5419
|
Sendt: 07.Okt.2013 kl. 15:14 |
|
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.
|
|
Bjarne
Sølv bruger
Medlem: 17.Sep.2010
Land: Danmark
Status: Offline
Point: 300
|
Sendt: 07.Okt.2013 kl. 15:42 |
Helt forståeligt.
Har lige prøvet at sætte det ind - desværre bliver resultatet forkert og med røde advarlsler til mig.
Da programmet måske fylder for meget sender jeg i første omgang VBA-beskrivelsen, således at du får det hele med.
mvh.
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range) ActiveSheet.Unprotect If Target.Row < 11 Or Target.Column <> 5 Then Exit Sub If Target.Value < 1000 Then Range("A" & Target.Row).Value = "" If Target.Value < 1000 Then Range("B" & Target.Row).Value = "" If Target.Value < 1000 Then Range("C" & Target.Row).Value = "" If Target.Value < 1000 Then Range("D" & Target.Row).Value = "" If Target.Value < 1000 Then Range("K" & Target.Row).Value = "" If Target.Value < 1000 Then Range("L" & Target.Row).Value = "" If Target.Value < 1000 Then Range("M" & Target.Row).Value = "" If Target.Value < 999 Then ActiveSheet.Protect If Target.Value < 999 Then Exit Sub '-------------------------------------------------------------------------------------------------
If Target.Value > 999 Then Range("c" & Target.Row).Value = Date If Range("E" & Target.Row).Value / 10 <> Round(Range("E" & Target.Row).Value / 10, 0) Then Range("a" & Target.Row).Value = 4
Range("J3") = Range("E" & Target.Row).Value Range("M1") = Range("E" & Target.Row).Value + Range("a" & Target.Row).Value '--------------------------------------------------------------------------------------------------
Dim ArkNavn, Findeomraade As String
' INDTÆGTER KONTO 1000 ' For at finde hensættelses kontonr. og arknavn: "Indtægter" samt postkode nr. 1 If Range("E" & Target.Row).Value > 999 And Range("E" & Target.Row).Value < 1999 Then ArkNavn = "Indtægter" If ArkNavn = "Indtægter" And Range("a" & Target.Row).Value <> 0 Then Range("a" & Target.Row).Value = 4
' Arknavn = BOLIG KONTO 2000 If Range("E" & Target.Row).Value >= 2000 And Range("E" & Target.Row).Value <= 2999 Then ArkNavn = "Bolig"
' Arknavn = HUSHOLDNING KONTO 3000 If Range("E" & Target.Row).Value >= 3000 And Range("E" & Target.Row).Value <= 3999 Then ArkNavn = "Husholdning"
' Arknavn = FORSIKRINGER KONTO 4000 If Range("E" & Target.Row).Value >= 4000 And Range("E" & Target.Row).Value <= 4999 Then ArkNavn = "Forsikringer"
' Arknavn = KOST KONTO 5000 If Target.Value >= 5000 And Target.Value <= 5999 Then ArkNavn = "Kost"
' Arknavn = DIVERSE KONTO 6000 If Target.Value >= 6000 And Target.Value <= 6999 Then ArkNavn = "Diverse"
' Arknavn = TRANSPORT KONTO 7000 If Range("E" & Target.Row).Value >= 7000 And Range("E" & Target.Row).Value <= 7999 Then ArkNavn = "Transport"
' Arknavn = BANK KONTO 8000 If Range("E" & Target.Row).Value >= 8000 And Range("E" & Target.Row).Value <= 8999 Then ArkNavn = "Bank"
' Arknavn = REJSER KONTO 9000 If Range("E" & Target.Row).Value >= 9000 And Range("E" & Target.Row).Value <= 9999 Then ArkNavn = "Rejser"
' Arknavn = "Hobby" KONTO 10.000 If Range("E" & Target.Row).Value >= 10000 And Range("E" & Target.Row).Value <= 10999 Then ArkNavn = "Hobby"
' Arknavn = ANDET KONTO 11.000 If Range("E" & Target.Row).Value >= 11000 And Range("E" & Target.Row).Value <= 11999 Then ArkNavn = "Andet" '---------------------------------------------------------------------------------------------------------------
If Range("B" & Target.Row).Value >= "" Then Range("B" & Target.Row) = Range("B" & Target.Row).Value + ArkNavn 'ok If Range("A" & Target.Row).Value = 1 And Range("E" & Target.Row).Value > 1999 Then Range("A" & Target.Row).Value = 4 ' ok If ArkNavn = "Kost" And Range("E" & Target.Row).Value > 5020 Then Range("A" & Target.Row).Value = 4 ' ok If ArkNavn = "Diverse" And Range("E" & Target.Row).Value > 6020 Then Range("A" & Target.Row).Value = 4 ' ok If Range("A" & Target.Row).Value = 1 Then Range("A" & Target.Row).Value = 0 'ok
ActiveSheet.Protect
If Range("a" & Target.Row).Value <> 0 And Range("a" & Target.Row).Value <> 2 And Range("a" & Target.Row).Value >= 3 Or Range("B" & Target.Row).Value = "" Then Range("A" & Target.Row).Value = "" Range("B" & Target.Row).Value = "" Range("D" & Target.Row).Value = "" Range("E" & Target.Row).Value = "" Range("A" & Target.Row).Select End If '------------------------------------------------------------------------------------------------------- Dim L1 As Variant Dim c As Variant ' tæller Dim KL As Variant ' kolonne Dim RK As Variant ' konto nr.i Ark "Kskl" Range("J" & Target.Row) On Error Resume Next
Findeomraade = "A1:A100" ' kolonne hvor alle konto nr står i de respktive ark (ArkNavn) Dim Kskl As String '"Ark Kasseklade" Dim BE As Variant ' Beløb i "Ark Kasseklade" Range("D" & Target.Row).Value Dim MK As Variant
KL = Replace(Cells(1, L1.Value + 4).Address(False, False), 1, vbNullString) MK = Range("J" & Target.Row).Value 'Modkonto nr. i "Kskl" Range "J1" (f.eks.; 4152) BE = Range("D" & Target.Row).Value ' indtastet beløb i Ark "Kskl" (f.eks.; 500,00)
For Each c In Sheets(ArkNavn).Range(Findeomraade).Cells If MK = c.Value Then Sheets(ArkNavn).Activate ' Sheets(ArkNavn)Range ("KL" & c.Row) Sheets(ArkNavn).Range(KL & c.Row).Value = Sheets(ArkNavn).Range(KL & c.Row).Value + BE
'I realiteten skal der ikke anvendes "Select" men kun "Find" 'og derefter finde kolonnen "KL" (e.ks. kolonne M svarende til okt.) 'derefter lægge værdien fra Sheets(Kskl).Range("D" & Target.Row).Value 'sammen med den fundne celle. (Sheets(ArkNavn).Range(M43).Value) Exit Sub End If Next c ActiveSheet.Protect
' Når værdien i Ark "Kskl" Range "BE" er lagt til værdien i den fundne celle vendes tilbage til; Sheets(Kskl).Range("K" & Target.Row).Select
End Sub '----------------------------------------------------------------------------------------------------
|
//Bjarne
|
|
EXCELGAARD
Platin bruger
Medlem: 27.Dec.2012
Land: Denmark
Status: Offline
Point: 5419
|
Sendt: 08.Okt.2013 kl. 10:40 |
Det gi'r jo slet, slet ingen mening, alt det der?!? Har det nogensinde virket?!? Du laver ALLE de fejl, det overhovedet er muligt, at begå, og løber lige nøjagtigt ind i de problemer, der opstår, når man gør det! Hvorfor i alverden definerer du dine variabler flere steder undervejs i din kode?!? Og, dermed misser at sætte flere af variablerne! Eksempelvis, så definerer du variablen 'Dim Kskl As String' midt i det hele, men ingen steder i koden kan jeg se, at du tildeler en værdi til denne variabel?!? Det samme med variablen 'L1' - du definerer den, men tildeler ingen værdi til den nogen steder, men du vælger alligevel, at benytte begge variabler uden værdi tildeling?!? Og, hvor er strukturen i koden?!? Hvorfor alle de 'If' sætninger??? Eksempelvis kan alle disse...
If Target.Value < 1000 Then Range("A" & Target.Row).Value = "" If Target.Value < 1000 Then Range("B" & Target.Row).Value = "" If Target.Value < 1000 Then Range("C" & Target.Row).Value = "" If Target.Value < 1000 Then Range("D" & Target.Row).Value = "" If Target.Value < 1000 Then Range("K" & Target.Row).Value = "" If Target.Value < 1000 Then Range("L" & Target.Row).Value = "" If Target.Value < 1000 Then Range("M" & Target.Row).Value = "" |
...IGEN klares med blot en enkelt linje:
If Target.Value < 1000 Then Range("A" & Target.Row & ":D" & Target.Row & ",K" & Target.Row & ":M" & Target.Row).ClearContents |
Selvom jeg sagtens kan se, hvad du forsøger på (har vi ikke alle været der - startet med at lave en automatisk kassekladde/bogføring ), så gi'r måden du gør det på, ingen mening! Undskyld, de hårde ord, men med bare en LILLE smule struktur, så kunne du undgå nærmest alle de fejl, som koden lige nu giver! Prøv lige, at læse denne lille artikel igennem: www.excelgaard.dk/Lib/Macros/GPP/ www.excelgaard.dk/Lib/Macros/GPP/ ...og kig så på din kode igen, og se om du nu osse overholder de mest simple regler for god programmering??? Og, nu du er inde på ovenstående hjemmeside, så surf lidt rundt og kig på alle de mange makro-eksempler, der er derinde, og se den gennemgående struktur i alt programmering: 1) Initialisere din kode 2) Definer dine variabler 3) Lav eventuelle test 4) Udfør opgaven 5) Afslut korrekt Og, jeg synes osse, at jeg kan se flere 'huller' i dine afgrænsninger: Hvad skal der f.eks. ske, hvis Target.Value er præcist 999? Du tester for '< 999' og for '> 999', men, hvad skal der ske, hvis værdien er præcist 999? Jeg gætter på, at værdien af variablen 'Kskl' også skal være 'Kskl', men, hvad med variablen 'L1'? I det hele taget blander du fuldstændig dine variabler helt sammen - hvordan kan du ligge en string, der repræsenterer et faneblad, til en værdi, der repræsenterer et celleindhold?
Range("B" & Target.Row) = Range("B" & Target.Row).Value + ArkNavn |
Skal det give bare lidt mening, så skal du da benytte dig af '&' i stedet! Den kode der, skal struktureres, ellers kommer du aldrig til at gennemskue den, og ikke mindst lære, at begå dig i et makro-miljø! Start med dine variabler: Definer dem alle i starten, sæt deres korrekte datatyper, og få tildelt dem alle deres korrekte værdier. Få dernæst kigget på alle dine 'If' sætninger - umiddelbart ser det ud til, at nærmest alle kan klares med 'Select...End Select'.
|
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.
|
|
Bjarne
Sølv bruger
Medlem: 17.Sep.2010
Land: Danmark
Status: Offline
Point: 300
|
Sendt: 10.Okt.2013 kl. 11:39 |
Du har ganske ret og jeg opfatter det IKKE som hårde ord! Tværtimod er det til stor hjælp.
Lidt baggrund;
Hvad du naturligvis ikke kan vide er, at jeg i 2005 var udsat for en grim ulykke, hvorved en hel del hukommelse er forsvundet. Bl.a. Store dele af min indlæring af maskine kode, Comal, Mat.65 og Excel.
I 2000 skrev jeg et ”Budget/Regnskabs” program uden en kassekladde, det kom først på for et par år siden.
Venner og familie bruger programmet og spørger om det ikke kan blive mere automatiseret.
De er meget begejstret for det fordi, de har fået et bedre overblik over deres øjeblikkelig økonomi, da det ikke kun er et budgetprogram.
Jeg bruger If sætninger fordi det i første omgang skaber et overblik for mig. Derefter kan jeg forhåbenligt ved hjælp få det mere strømlignet.
Udover at blive færdig med programmet, bruger jeg det som genoptræning.
Når jeg gennemgår de tidligere Excel programmer kan jeg ikke genkende eller forstå, at jeg har lavet dem.
Har nu efter bedste evne rettet til i VBA-koden og er ganske klar over, at den skal gøres enklere. (HJÆLP)
Faktisk virker nedenstående;
Range("B" & Target.Row) = Range("B" & Target.Row).Value + ArkNavn
Jeg prøver, at vedhæfte hele filen, for som du selv skriver er det nærmest umuligt, at optimerer en kodestump.
Har forsøgt at vedhæfte filen - uden held. Har set under opload men det jeg får frem svarer ikke til det viste skema.
Er der en anden måde at sende det på?
Efter at der nu er redigeret ganske meget, er der makroer som ikke længere virker og skal derfor efterredigeres senere.
|
//Bjarne
|
|
Bjarne
Sølv bruger
Medlem: 17.Sep.2010
Land: Danmark
Status: Offline
Point: 300
|
Sendt: 10.Okt.2013 kl. 11:52 |
Har lige fundet ud af min fejl vedr. opload.
|
//Bjarne
|
|
Bjarne
Sølv bruger
Medlem: 17.Sep.2010
Land: Danmark
Status: Offline
Point: 300
|
Sendt: 29.Okt.2013 kl. 21:01 |
Har nu selv ved anden hjælp fundet løsningen.
Programmet er ændret på flere punkter.
Derfor beder jeg Allan om at slette hele dette indlæg.
Mvh
|
//Bjarne
|
|
Allan
Forum Admin
Forum Admin
Medlem: 03.Feb.2010
Land: Danmark
Status: Offline
Point: 10330
|
Sendt: 29.Okt.2013 kl. 21:27 |
Hej Bjarne, Vi sletter helst ikke indlæg som er blevet besvaret af andre medlemmer af to grunde: - Der er typisk lagt en del energi i besvarelserne, som pludselig bare kastes i skraldespanden. Det er ikke fair mod dem som har brugt deres tid på at besvare.
- Næsten uanset hvordan udfaldet er i en tråd, er der som regel andre som på den ene eller anden måde kan drage nytte af indeholdet alligevel.
Selvfølgelig kan der være flere grunde til at indhold bør slettes, men det er en helt anden sag. God aften. //Allan
|
|
Bjarne
Sølv bruger
Medlem: 17.Sep.2010
Land: Danmark
Status: Offline
Point: 300
|
Sendt: 29.Okt.2013 kl. 23:23 |
Hej Allan,
Som du vil kunne se er de mange besvarelser og ideer og forslag blevet anvendt.
Dette vil fremgå, når jeg oploader den sidste version.
Der var desværre ingen som har kunnet hjælpe på netop denne opgave, inden for det sidste år.
Nu er opgaven vedr. dette punkt løst i dag og det vil jeg gerne dele med andre.
Du må da gerne lade det stå, men jeg var bange for, at det ville forvirre mere end det ville gavne. .
Det er måske meget godt for, så kan man se hvad jeg har gjort forkert og hvordan det ikke skal programmeres
Jeg har arbejdet på at, udskrive kassekladen månedsvis, men dette er endnu ikke løst.
Med venlig hilsen
|
//Bjarne
|
|
Allan
Forum Admin
Forum Admin
Medlem: 03.Feb.2010
Land: Danmark
Status: Offline
Point: 10330
|
Sendt: 30.Okt.2013 kl. 09:17 |
Dejlig at du ser så positivt på det. Mens jeg har lidt taletid, vil jeg da lige nævne at der efter min mening ikke findes korrekt for forkert programmering. Virker det, så virker det uanset hvad. Man kan diskutere om metoden er hensigtsmæssig, elegant, eller det modsatte, men virker det, så virker det. Mange starter ud på samme måde som du har gjort, for så bagefter at optimere hist og her, hvilket kan være en overordentlig god idé, da stabiliteten ofte øges væsentligt ved at bruge smuk kode. //Allan
|
|