• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Bestandsnaam en VBA

Status
Niet open voor verdere reacties.

Jeroen123456

Gebruiker
Lid geworden
3 jul 2007
Berichten
115
Ik kom er niet helemaal uit.

De bedoeling is om van een heleboel excelbestanden 1 totaal lijst te maken.
Hiervoor heb ik een macro gemaakt die van een geopend bestand alle regels kopieert naar
de totaallijst.

Nu wil ik dat achter ieder regel in het totaalbestand komt te staan uit welk bestand de gegevens komen.

Iemand een idee?
 

Bijlagen

  • aaatotaallijst 2007.zip
    15,2 KB · Weergaven: 20
De bestandsnaam komt uit de "activesheet".

-----------------------------------------------------------------
Werkwijze

1) Ik open de totaallijst
2) Ik open het volgende deelbestand welk een naam heeft.
3) middels de macro (ctrl + q) worden de regels van het deelstande overgezet naar de totaallijst en daarna moet achter iedere regel de naam moeten komen van het deelbestand.
4) Daarna sluit ik het deelbestand en open het volgende deelbestand en herhaal de macro.

groetjes Jeroen
 
en hetgeen je dan kopieert, telkens een bereik van cellen zoals bv. A33:Y40?
 
Ja

ik selecteer B1 tot en met x1 en dan xldown enz.

daarna plak ik speciaal in de totaalsheet vanaf de activecell.

daarna zou ik dus in kolom Z vanaf de active row tot en met de active row + aantalregels
de bestandsnaam willen invoeren van het bestand waar de zojuiste geplakte regels vandaan komen.
 

Bijlagen

  • aaatotaallijst 2007.zip
    15,2 KB · Weergaven: 23
Hoi

Probeer dit eens uit.

De gekopieerde gegevens worden bijgevoegd onder de laatste gebruikte regel, met 1 lege regel ertussen.

Code:
Sub Complete_lijst_maken()
    
    Dim lLastRow As Long
    Dim rBrongegevens As Range
    
    Set rBrongegevens = Range("B1:Z1", Range("B1:Z1").End(xlDown))
    
    rBrongegevens.Copy
    
    With Workbooks("aaatotaallijst 2007.xls").Sheets("Blad1")
        
        lLastRow = .Range("A" & Rows.Count).End(xlUp).Row
        
        .Range("A" & lLastRow + 2).PasteSpecial xlPasteValues
        
        .Range("Z" & lLastRow + 2).Resize(rBrongegevens.Rows.Count).Value = rBrongegevens.Parent.Parent.Name
    
    End With
    
    Application.CutCopyMode = False
    
End Sub

ongeteste code

Wigi
 
Beste Wigi,

...vandaar die aanduiding "Mega Honourable Senior Member".

Bedankt voor je hulp, het werkt uitstekend.

Groetjes,

Jeroen.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan