26. november 2006 - 22:46Der er
72 kommentarer og 1 løsning
Ønsker automatisk overførelse af hvor mange dage der er indtastet
Hej allesammen. Jeg har et regneark der indholder 9 faneblade,med dagligt salg fra 9 forskellige butikker,de er allesammen bygge ens op,så alle data står det samme sted i alle arkene. Jeg har totalsalg stående i c373 der er dag 1 i måneden,derefter følger dag 2 i g373,dag 3 k373 osv. til måneden er omme. Jeg har så et faneblad nummer 10 med diverse opsamlinger fra de 9 ark,jeg ønsker på dette ark (nummer 10) en celle (formel),hvor jeg kan se hvor mange dage der er brugt,for at nå en given total.I ark nummer 10 har jeg kolonner med total pr butik,men jeg ønsker at kunne se hvor mange dage denne total indeholder. Jeg havde forestillet mig noget med at lave en kolonne,hvor at når der var en omsætning c373 skrev denne kolonne 1,når der næste dag var en indtastning i g373 skrev kolonnen 2 osv. Jeg håber at jeg har forklaret mig godt nok ellers kom tilbage. Torben
Den tæller hvor mange af dine celler i Ark1, der er udfyldt. Du skal selvfølgelig udvide, så alle cellefr, der kan tastes i er med. Gwentag for de andre ark.
Hej jkrons. Jeg har lige prøvet din formel,men rent umiddelbart tror jeg ikke at den virker,jeg prøvede først med de 2 første dage i måneden og der skrev den fint nok et 2 tal i cellen,men når jeg så prøvede at slette den første dag,altså lave den om til et 0 skrev den stadigvæk 2 i cellen i ark 10,i alle mine celler med 373 ligger der i forvejen en formel og derfor står der 0 allerede,jeg håber du har en løsning på dette. Til excelent. Din formel tæller alle celler i 373 men der er 3 celler imellem der også indeholder tal så jeg kan ikke bruge din formel. Jeg går til køjs nu men vender tilbage imorgen engang Torben
hvis det er 3 samlede celler fx. F373,G373,H373 (trækkes de fra) =TÆL.HVIS(Ark1!C373:AG373;">0")-TÆL.HVIS(Ark1!F373:H373;">0")
hvis det fx er F373,H373,K373 (trækkes de fra) =TÆL.HVIS(Ark1!C373:AG373;">0")-TÆL.HVIS(Ark1!F373;">0")-TÆL.HVIS(Ark1!H373;">0")-TÆL.HVIS(Ark1!K373;">0")
Hej excelent. Det er kun oplysningen i c373,g373,k373 osv,jeg kan/skal bruge til noget,de andre celler hænger ikke sammen,så der er 3 enkelt stående celler mellem hver celle,hvorfra jeg ønsker oplysningen hentet. Torben
Ovenstående formel virker for så vidt godt nok, men den skal jo indsættes i 12 forskellige celler foruden alle arknavne skal rettes til dine aktuelle Så prøv i stedet denne function. Indsættes i et alm. modul, og i arket skriver du blot : =Dage("Ark1") udskift Ark1 med dit aktuelle arknavn. I ark/måneder med 31 dage anvendes kolonne 3 til 123 I ark/måneder med 28 dage anvendes kolonne 3 til 111 Så hvis du i ark med 28 dage benytter kolonne 112 til 123 til andre værdie, så skal koden tage højde for dette (bliver først efter arb.tid.)
Function Dage(Ark) Dim t, d Application.Volatile For t = 3 To 123 Step 4 If Sheets(Ark).Cells(373, t) > 0 Then d = d + 1 Next Dage = d End Function
Hej excelent. Nu er vi ude i noget jeg ikke aner en meter om,dette kræver en nærmere forklaring. I mit ark nummer 10 hvor jeg ønsker denne oplysning eksempel i celle t44 skal jeg der stille musen og skrive hvad? jeg har efter månedens længde jo forskellige antal salgsdage pr. måned og hvad mener du med modul.
hvis du i ark med 28 dage anvender kolonne DK til DV til andre værdier skal der tages højde for dette. I så fald skal jeg bruge en indikator for hvilken måned arket dækker dette kan være et tal mellem 1-12 eller bedre antallet af dage i måneden
Vi mangler faktisk en oplysning :-) Da du jo har formler i ræke 373? Kan der være dage, hvor der er tastet, men hvor salget er 0? Altaså dage, der skal indgå i optællingen, selv om der ikke har været salg?
Hej jkrons. Der er omsætning i alle dage på arket.Læs nedstående. Hej excelent i alle mine 9 ark er der nøjagtig det samme antal dage,alle ark er bygget ens op,så hvis der er foreksempel er 24 salgsdage i måneden,kommer der til at være 3 dage sidst i måneden,hvor der ikke bliver indtastet noget. Er det forståeligt.jeg har først frie kolonner fra DV og derudaf.
Hej excelent. Jeg har lige prøvet med dit ekspl.,når jeg jeg i det første faneblad har lavet denne formel,skriver den 7 dage,men der er kun 6 dages indtastning.Hvis jeg så prøver i faneblad nummer 2,på samme måde som i nr. 1,kommer den med en fejlmedd. (navn?)og det gør den så også i nummer 1 faneblad.Hvad er galt?
Hej excelent. Den ene formel kopierer jeg direkte fra dit svar og den anden skriver jeg på denne måde =Dage("KOSCIERZYNA") der kommer en fejlmedd. der hedder AMBIGUOUS NAME DETECTED:Dage
prøv lige at udskifte din kode med denne i arket skal du så skrive : =xDage("KOSCIERZYNA") i stedet for du kan også blot sætte et x i de 2 linier som vist her (1 og næstsidste linie)
Function xDage(Ark As String) Dim t, d Application.Volatile For t = 3 To 123 Step 4 If Sheets(Ark).Cells(373, t) > 0 Then d = d + 1 Next xDage = d End Function
Hej excelent. Jeg har prøvet men med det samme resultat som før,hvis du er intresseret i at prøve mere,kunne jeg sende dig en mail med hele arket,hvis du giver din mail til alle og enhver,men det er mærkeligt hvis det fungerer fint hos dig,jeg må jo gøre et eller andet forkert.
Da du har Total i forskellige rækker, har jeg udvidet Funktionen, så du foruden Arknavn kan indtaste rækkenummer for det aktuelle Ark
I Arket skriver du så : =xDage("arknavn";373)
Function xDage(Ark As String, Række) Dim t, d Application.Volatile For t = 3 To 106 Step 4 If Sheets(Ark).Cells(Række, t) > 0 Then d = d + 1 Next xDage = d End Function
sender arket retur med en lille navneændring, så det ikke konflikter med din org.
Hej excelent. Dette ark som jeg fik tilbage fra dig indeholder også den omtalte fejl #navn? og når jeg prøver at gøre det i mit ark her sker der det samme. Hvad gør jeg forkert men på en måde kan jeg ikke gøre noget forkert andet end at åbne det medsendte fra dig og allerede der er den gal.
Hej mrjh. Dit forslag duer ikke,hvis jeg forstår formelen godt,da det kun er oplysninger i c373 g373 k373 osv. jeg skal bruge,imellem står der også nogle tal der ikke skal bruges i dette sammenhæng
Nope, kan jeg godt se. Så har jeg misforstået. Troede at alle felter ville have tal over 0 frem til sidste kolonne som var udfyldt. I dit eks. ville D373 også have et tal>0 i og med E og F havde det. Undskyld forstyrrelsen, og fortsæt med din fine hjemmegjorte funktion :-) Torbenlind > har du excelents funktion kopieret ind flere gange. Det kunne det tyde på med meddelelsen "ambigues name". Koden skal kunne ligge i alm. modul som excelent skriver. Ikke i ark eller this workbook
Hej excelent. Når jeg ser dit test arrk står der bare #navn? i ark 1 og #navn? i KOSCIERZYNA. der må være et eller andet galt hos mig hvis det virker hos dig.
Hej mrjh. Jeg har ikke funktionen kodet ind flere gange der er kun 1 modul pr. ark det vil sige da jeg lavede en test havde jeg et modul liggende på et ark og det næste modul liggende på det næste ark.
Hej excelent. DET VIRKER BARE med den nye formel du gav mig så simpelt var det alligevel men jeg fik lære lidt om makro (modul)så smid et svar og du får dine velfortjente POINT. MANGE MANGE TAK for hjælpen og tålmodigheden.
LOL ja det var en hård nød, beklager jeg fik dig rodet ud i det vba halløj, men under normale omstændighder er det et særdeles godt værktøj når excell formlerne må gi op. velbekom
du skal ikke beklage,jeg fik lært en lille smule om vba og det tager man aldrig skade af,endnu engang tak for hjælpen
Synes godt om
Ny brugerNybegynder
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.