• 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.

Aanpassing VenA VBA code (uit eerdere post)

Status
Niet open voor verdere reacties.

ThatsMeTo

Gebruiker
Lid geworden
18 mei 2017
Berichten
31
VenA (of iemand die net zo goed is),

Ik had gezegd dat ik het zelf wel voor elkaar zou krijgen om aan deze code een PasteSpecial Paste:=xlPasteValues toe te voegen.
Maar na veel zoeken combineren passen en meten merk ik dat ik de stijl verschillen tussen de codes niet kan vertalen naar werkende invoegtoepassingen.
Dus ik hoop dat je me hiermee alsnog wil helpen.

Kan je in deze code de PasteSpecial Paste:=xlPasteValues toevoegen zodat ik geen opmaak meeneem?


[XML]Sub VenA()
With GetObject("K:\CD\08_ExpertiseCentrum\08.5_Innovatie\08.5_Proces-MM\Moederlijst\Concepten\Moederlijst 5.03.xlsm").Sheets("verkoop").Range("AA2:AA2000")
.AutoFilter 1, "<>0"
.Copy ThisWorkbook.Sheets("Blad1").Range("AA2:AA2000")
.Parent.Parent.Close 0
End With
End Sub[/XML]
 
Probeer eens:
Code:
Sub VenA()
  With GetObject("K:\CD\08_ExpertiseCentrum\08.5_Innovatie\08.5_Proces-MM\Moederlijst\Concepten\Moederlijst 5.03.xlsm").Sheets("verkoop").Range("AA2:AA2000")
    .AutoFilter 1, "<>0"
    ThisWorkbook.Sheets("Blad1").Range("AA2:AA2000") = .Value
    .Parent.Parent.Close 0
  End With
End Sub
 
Dat is m,

Super bedankt, en dat bewijst maar weer dat ik nog veel moet leren qua VBA :D
 
humm, ik heb te vroeg gejuicht.

Bij de laatste code zijn alle nulwaarden weer terug (om de een of andere reden wordt de autofilter nu genegeerd, hoe kan ik die terug krijgen of hoe kan de value op de juiste manier worden toegevoegd?
 
Volgende poging:
Code:
Sub VenA()
    With GetObject("K:\CD\08_ExpertiseCentrum\08.5_Innovatie\08.5_Proces-MM\Moederlijst\Concepten\Moederlijst 5.03.xlsm")
        With .Sheets("Verkoop").Range("AA2:AA2000")
            .AutoFilter 1, "<>0"
            .Copy
            ThisWorkbook.Sheets("Blad1").Range("AA2:AA2000").PasteSpecial xlValues
        End With
        .Close 0
    End With
End Sub
 
Bekijk bijlage Kopieer test 2.xlsmBekijk bijlage Kopieer test 1 Public.xlsm


Ik heb de bestanden maar even bijgevoegd waarop het gebaseerd is.

Nu krijg ik eerst de melding dat er een grote hoeveelheid gegevens op het klembord staan, daarna plakt hij de nulwaarden weer mee.

let op dat het pad en de range (naar A1:A10) aangepast moeten worden als je de documenten wil gebruiken voor een test.

Morgen ga ik weer verder om dit uit te vogelen (met jullie hulp uiteraard)
 
Ik ben weer op zoek naar de juiste oplossing.

Helaas heb ik de juiste positie van de ".value" nog niet gevonden :(
 
Je hebt de oude code in jouw bestand staan. Ook staan er geen formules in het andere bestand. Als je gefilterde gegevens kopieert dan worden deze gegevens volgens mij als waarden geplakt. Dus wat gaat er mis?
 
[XML]Sub VenA_III()
With GetObject("K:\CD\08_ExpertiseCentrum\08.5_Innovatie\08.5_Proces-MM\Moederlijst\Concepten\Moederlijst 5.03.xlsm").Sheets("verkoop").Cells(1).Range("AA2:AA2000")
.Replace "0", "", xlWhole
.Copy ThisWorkbook.Sheets("Blad1").Range("AA2:AA2000")
.Parent.Parent.Close 0
End With
End Sub[/XML]

In deze laatste code gaat alles goed behalve de plak actie, deze actie moet alleen de waarden kopiëren.
Nu wordt de gehele opmaak meegenomen.

(de oude code die ik gebruikte met de autofilter werkte uiteindelijk wel zoals de bedoeling was alleen deze nam de opmaak ook mee, vandaar dat ik daarmee verder was gegaan).

Nu ben ik dus op zoek naar hoe ik het .value of .xlpastespecial.value moet toevoegen. ik dacht dat wel zelf te kunnen, maar dat lukt me nog niet.
 
Zo dan?

Code:
Sub VenA()
  With GetObject("C:\Temp\Kopieer test 2.xlsm").Sheets("test1").Range("A1:A10")
    .Replace "0", "", xlWhole
    ThisWorkbook.Sheets("Blad1").Range("A1:A10") = .Value
    .Parent.Parent.Close 0
  End With
End Sub
 
VenA,

Helemaal perfect. ik snap alleen niet waarom dat niet werkte bij de oude code. maar ontzettend bedankt!
Op naar de volgende les voor mij:)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan