Fråga : VBA: Kopiera data in i nya den arbetsböcker och besparingen sparar

(Se tillbehör 1), den pröva förmiddagen för

I att skriva en makro automatiskt för att skapa och räddning en ny unik arbetsbok för varje person på mitt räkneark.

For example, i MacroQuestion.xls, jag skulle önskar:
1. Valda celler i A2 till C9 baserade på faktumkolonnen A har det samma känt (Adam) från A2 till A9. Jag behöver böjligheten för att formeln automatiskt ska veta för att ta alla ny rad, i fall att som jag tillfogar extra fodrar av uppta som omkostnad. IE: Den ska för att vara ror inte alltid 2 till 9 som listar Adams uppta som omkostnad. Den kan är ror 3 till 50.
2. Kopiera A2 till C9 in i en ny arbetsbok.
3. Automatiskt räddning den nya arbetsboken till det skrivbords- som Adam.XLS.
4. Gör automatiskt ett separat att spara för det annat folket som väl. Så spring makroen som skulle en gång, ger mig ”en Adam.xls, en Mark.xls, en Jenny.xls och en Erin.xls” file.

Thank dig för din hjälp!

Erin
Attachments: för >

<-/div> filenamen " för class= för >MacroQuestion.xls " fileSize " > (31 KB) " javascript för href= " för <-/span> <-/div>
för >
<-/div> " klar "

Svar : VBA: Kopiera data in i nya den arbetsböcker och besparingen sparar

Försök detta.
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:
Underx ()
 
Dunkel rng som spänner, ws som arbetssedeln

Application.DisplayAlerts = falskt

Med Sheet1
    Sheets.Add (). Känt = ”vikarier”,
    . Spänna (”A1”. Spänna (”A” & Rows.Count). Avsluta (xlUp)).AdvancedFilter-handling: =xlFilterCopy CopyToRange: =Sheets (”vikarier”). Spänna (”A1”), unikt: =True
     För varje rng täcker in (”vikarier”). Spänna (”A2”, täcker (”vikarier”). Spänna (”A2”). Avsluta (xlDown))
        Om UCase (rätten (rng, 5))  <> ”SLUTSUMMA” därefter
            Uppsättning ws = Sheets.Add (After: =Sheets (Sheets.Count))
            ws. Namnge = rng
            .AutoFilterMode = falskt
            . Spänna (”A1”) .AutoFilter sätter in: =1 Criteria1: =rng & ”*”,
            .AutoFilter.Range.Copy täcker (rng. Text). Spänna (”A1”)
            Täcker (rng. Text). Flyttning
            ActiveWorkbook.Close SaveChanges: =True Filename: = " C:\Users\Stephen\Desktop\ " & rng & ”.xls”,
        Avsluta om
    Nästa rng
    .AutoFilterMode = falskt
    Täcker (”vikarier”). Borttagnings
Avsluta med
     
Application.DisplayAlerts = True

Avsluta suben
Andra lösningar  
 
programming4us programming4us