aka Skrevet 21. juni 2006 Del Skrevet 21. juni 2006 (endret) Hei, Jeg har en en makro som henter data fra rad 16-399 og legger det i en bestilling. Jeg vil at den skal hente data fra rad 16 til rad 502 istedet, noen som vet hva jeg må endre på i makroen for å få det til? Makroen ser slik ut: Public Function vSettInn(x As Integer) As Variant Dim aVare(36) As Variant Dim i, n As Integer vSettInn = "" n = 0 'Blanke ut tabellen For n = 0 To 36 Step 1 aVare(n) = "" Next n = 0 For i = 62 To 399 Step 1 If Worksheets("Bestilling side 1").Cells(i, "A").Value <> "" Then aVare(n) = Worksheets("Bestilling side 1").Cells(i, "B").Value n = n + 1 End If Next vSettInn = aVare(x - 16) End Function Endret 21. juni 2006 av aka Lenke til kommentar
aadnk Skrevet 21. juni 2006 Del Skrevet 21. juni 2006 Den nåværende prosedyren ser ut til å hente ut informasjon fra rad 62 til 399, utifra den begrensede informasjonen jeg har til rådighet. Jeg må bare gjette hvorledes funksjonen benyttes, men det later ikke til å være en særlig optimalisert prosess. I alle fall, jeg vil tro du kan endre koden til følgende for å oppnå det du ber om: Public Function vSettInn(x As Integer) As Variant Dim aVare(36) As Variant Dim i, n As Integer vSettInn = "" 'Blanke ut tabellen For n = 0 To 36 aVare(n) = "" Next For i = 16 To 502 If Worksheets("Bestilling side 1").Cells(i, "A").Value <> "" Then aVare(n) = Worksheets("Bestilling side 1").Cells(i, "B").Value n = n + 1 End If Next vSettInn = aVare(x - 16) End Function Lenke til kommentar
aka Skrevet 21. juni 2006 Forfatter Del Skrevet 21. juni 2006 okey, takk skal du ha! Det er en knapp som heter oppdater som henter de radene en har merket av og legger de inn i bestillingsskjema i samme arbeidsbok. Men en annen ting er at jeg får ikke denne oppdater knappen til å virke på de andre arkene jeg oppdaterer.(Når første siden blir kopiert til side 2 osv) Kan du se utifra den makroen om det er noe som tilsier at den bare skal virke på "bestilling 1"? Og eventuelt hva jeg må gjøre for å få den til å virke på flere arbeidsbøker.... ? Lenke til kommentar
Harald Staff Skrevet 21. juni 2006 Del Skrevet 21. juni 2006 Kjære deg da. Både tallet 399 og navnet "Bestilling side 1" står da svært så tydelig i koden. Har du tatt deg bryet med å lese den selv? HTH. Beste hilsen Harald Lenke til kommentar
aka Skrevet 21. juni 2006 Forfatter Del Skrevet 21. juni 2006 Jeg har lest det om og om igjen, men har ikke bakgrunn med dette så det ble litt gresk for meg. Holder på å prøve og feile og lese for å lære meg dette. Da jeg brukte aadnk sitt forslag virket ingenting, så jeg bruker fremdeles "mitt". Har fått det til å virke ned til celle 501, men ikke at oppdater knappen virker på arkene som blir opprettet. Trodde kanskje det var fordi arkene som blir kopiert får navnet "side 2" osv mens hovedarket heter Bestilling 1...... Prøvd litt forskjellig der også men uten hell. Lenke til kommentar
Harald Staff Skrevet 21. juni 2006 Del Skrevet 21. juni 2006 (endret) Du har noe du vet går til 399, og du vil utvide til 502. Koden sier For i = 62 To 399 Step 1 og i mine øyne ville det da være nærliggende å forsøke For i = 62 To 502 Step 1 for så å se hva som skjer. Makroen du postet er ingen makro, men en funksjon som leser fra et ark. Limingen av dette foregår annetsteds, via kode eller et sett regnearkformler. Siden vi ikke vet, kan vi ikke løse. Men det vi vet er at arket det leses fra alltid heter "Bestilling side 1" (og ikke "Bestilling 1"). Det får du enten rette til hva det bør være, eller, helst, sende det som et parameter til funksjonen. Hvordan det skal løses avhenger igjen av om limingen foregår via formler eller kode. EDIT: Jeg skal kanskje legge til at funksjonen ikke er noe lærestykke når det gjelder programmering. Blant annet har den en øvre grense på 37 verdier i området den leser fra, og altfor mange ting er hardkodet. Så hvis du egenopplærer deg, ikke bruk alt for mye tid på å studere akkurat den der. HTH. Beste hilsen Harald Endret 21. juni 2006 av Harald Staff Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå