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

VBA verticaalzoeken maar met vaste waarde kopieren

  • Onderwerp starter Onderwerp starter HWV
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

HWV

Terugkerende gebruiker
Lid geworden
19 feb 2009
Berichten
1.213
Beste,

Ik gebruik de volgende code die ik hier via het helpform heb gekregen.
Werkt goed, maar nu moet hij de vaste waaarde kopieren.
Code:
On Error Resume Next
    For j = 3 To Sheets("VoorraadWaardeControle").Cells(Rows.count, 1).End(xlUp).Row
    With Workbooks("27.xls").Sheets("ArtikelConversie Output1").Columns(1).Find(Sheets("VoorraadWaardeControle").Cells(j, 1).Values)
      .Offset(, 150).Copy Sheets("VoorraadWaardeControle").Cells(j, 3)
      .Offset(, 151).Copy Sheets("VoorraadWaardeControle").Cells(j, 4)
      .Offset(, 152).Copy Sheets("VoorraadWaardeControle").Cells(j, 5)
      .Offset(, 153).Copy Sheets("VoorraadWaardeControle").Cells(j, 6)
      .Offset(, 154).Copy Sheets("VoorraadWaardeControle").Cells(j, 7)
      .Offset(, 155).Copy Sheets("VoorraadWaardeControle").Cells(j, 8)
      .Offset(, 35).Copy Sheets("VoorraadWaardeControle").Cells(j, 9)
    End With
     Next

In workbook 27.xls sheet Opslag staat een formule, die moet gekopieerd worden met vaste waarde naar sheet VoorraadWaardeControle.

Hoe zorg ik dat deze vaste waarde gekopieerd gaat worden.

Groet HWV
 
Wat bedoel je met vaste waarde?
Kan je een voorbeeldbestand bijsluiten?

Met vriendelijke groet,


Roncancio
 
Kijk een gegeven paard in de bek en verbeter hem dan:

Code:
For j = 3 To Sheets("VoorraadWaardeControle").Cells(Rows.count, 1).End(xlUp).Row
  With Workbooks("27.xls").Sheets("ArtikelConversie Output1").Columns(1).Find(Sheets("VoorraadWaardeControle").Cells(j, 1))
    Sheets("VoorraadWaardeControle").Cells(j, 3).resize(,6)=.Offset(, 150).resize(,6)
    Sheets("VoorraadWaardeControle").Cells(j, 9)=.Offset(, 35)
  End With
Next
 
Gelukt

SNB heeft de spijker weer op de kop geslagen. :thumb:
Dit is wat ik wilde bereiken.

Bedankt voor de inspanning.

groet HWV
 
Probeer eens anders te denken dan met kopiëren (dat overigens meer geheugen gebruikt dan je lief is).

Voorbeeld

'kopieer' de waarde van cel A1 naar cel K1

[K1]=[A1]
is toch een stuk eenvoudiger dan met copy / pastespecial

of
c0=[A1]
[K1]=c0
bereik je hetzelfde effekt als met [K1]=[A1], maar is ook eenvoudiger dan copy / paste

Datzelfde geldt ook voor rijen en kolommen:

rows(4)=rows(2).value
zorgt ervoor dat rij 4 dezelfde waarden krijgt als rij 2 (ipv. copy / pastespecial
 
Ik ga het proberen

Beste SNB,

Bedankt voor de tip, ik ga het uitproberen.
Je kan dus op deze manier de code een stuk korter maken en een stuk sneller.

Groet HWV
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan