Fråga : Hur kan jag kopiera en spänna av celler i en arbetssedel till ett annat område i den samma arbetssedeln som baseras av av värdera av en cell i Excel 2007?

Hälsningen behov för

I att vara kompetent programatically att kopiera en spänna av celler i en överträffaarbetsbok till ett annat område i den samma arbetsboken som baseras av av, värderar av starten och avslutar daterar i arbetssedeln.  Arbetssedeln, som jag har fäst, visar tar prov data.  Så om jag behövde att ändra hackastarten, datera av ett objekt, mig behöver att överträffa för att välja upp alla av värderar i månadkolonnerna och skiftar det enligt den nya hackastarten daterar.  Också om förfallodagen avslutar, datera ändringar, mig behöver den att justera därmed.  Denna möjlighet använder vba? filename " för class= för >

Example.xlsx " fileSize " > (8 KB) " javascript för href= " för <-/span>
Sample data
<-/div>
" " för >
<-/div> " klar "

Svar : Hur kan jag kopiera en spänna av celler i en arbetssedel till ett annat område i den samma arbetssedeln som baseras av av värdera av en cell i Excel 2007?

daintysally,

Den nedanföra kodifiera är i fäst sparar.

Hopp den gör vad du önskar.

Patrick
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
Underspecialmacro ()
Dunkel ws som arbetssedeln
Dunkel rng1 som spänner
Dunkel celle1 som spänner
Dunkel rng2 som spänner
Dunkel celle2 som spänner
Dunkel pickstart som daterar
Dunkel förfallodag som daterar
Dunkel pickweek som Long
Dunkel rng_step som Long
Dunkel step_counter som Long

Uppsättningen ws = täcker (”Exempel-för”)

Uppsättning rng1 = ws. Spänna (ws. Celler (2, ”A”), ws. Celler (ws. Rows.Count, ”A”). Avsluta (xlUp))
pickweek = 3

step_counter = 0
För rng_step = 0 till 26 kliver 13
    För varje celle1 i rng1
        pickstart = celle1.Offset (0, 3)
        förfallodag = celle1.Offset (0, 4)
        Uppsättningen rng2 = spänner (ws. Celler (celle1.Row, ”F”), ws. Celler (celle1.Row, ”Q”)). Offset (0, rng_step)
        rng2 (1, 12). Offset (0, 1) .FormulaR1C1 = ”=SUM (RC [- 12]: RC [- 1])”,
        rng2.ClearContents
        För varje celle2 i rng2
            Om ws. För >=pickstart för celler (1, celle2.Column) _,
                Och ws. Celler (1, celle2.Column)  <>
           
Andra lösningar  
 
programming4us programming4us