Toon posts:

[Excel 2010 VBA] Update rij uit tweede sheet

Pagina: 1
Acties:

Onderwerpen


  • cschot
  • Registratie: februari 2008
  • Laatst online: 07-12-2020
Tweakers,

Dit script kopieert bepaalde celllen naar een andere sheet in Excel.
Als ik het script draai, pakt hij alleen de eerste 9 rijen.
Daarna moet hij wat langer zoeken, en stop hij.
Prompt: 9 rijen geupdatet.
Weet iemand hoe ik alle 910 rijen kan updaten?
Er staat na de 9e rij geen lege rij.
Als ik debug, dan geeft DestSheet.Range("AQ65536").End(xlUp).Row
waarde 910 aan.
Weet iemand raad?

code:
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
Sub CopySignificant()

  Dim DestSheet        As Worksheet
  Dim SrcSheet         As Worksheet
  
  Set DestSheet = Worksheets("items")
  Set SrcSheet = Worksheets("prijslijst")
  
  Dim sRow       As Long    
  Dim dRow       As Long     
  Dim sCount     As Long
  sCount = 0
  dRow = 1

  For sRow = 1 To DestSheet.Range("AQ65536").End(xlUp).Row
    

     If DestSheet.Cells(dRow, "AQ") Like SrcSheet.Cells(sRow, "A") Then
        sCount = sCount + 1
        
        SrcSheet.Cells(sRow, "B").Copy Destination:=DestSheet.Cells(dRow, "E")
        SrcSheet.Cells(sRow, "C").Copy Destination:=DestSheet.Cells(dRow, "K")
        SrcSheet.Cells(sRow, "D").Copy Destination:=DestSheet.Cells(dRow, "AT")
        SrcSheet.Cells(sRow, "D").Copy Destination:=DestSheet.Cells(dRow, "Y")
        DestSheet.Cells(dRow, "L").Value = "1004"
        dRow = dRow + 1
     End If
        
  Next sRow
  
  MsgBox sCount & " rijen geüpdatet"

End Sub

[Voor 7% gewijzigd door cschot op 15-10-2010 16:52]


  • Dirk
  • Registratie: november 2004
  • Laatst online: 17:47

Dirk

Coördinator Frontpagemoderatie
Blijkbaar is cel A10 in de bronsheet dan niet gelijk aan cel AQ10 in de doelsheet?

All statements are true in some sense, false in some sense, meaningless in some sense, true and false in some sense, true and meaningless in some sense, false and meaningless in some sense, and true and false and meaningless in some sense.


  • cschot
  • Registratie: februari 2008
  • Laatst online: 07-12-2020
script aangepast, hij pakt nu de eerste 13 rijen.

code:
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
Sub CopySignificant()

  Dim DestSheet        As Worksheet
  Dim SrcSheet         As Worksheet
  
  Set DestSheet = Worksheets("items")
  Set SrcSheet = Worksheets("prijslijst")
  
  Dim sRow       As Long
  Dim dRow       As Long
  Dim sCount     As Long
  sCount = 0
  dRow = 1

  For sRow = 1 To DestSheet.Range("AQ65536").End(xlUp).Row
    

     If DestSheet.Cells(dRow, "AQ") Like SrcSheet.Cells(sRow, "A") Then
        sCount = sCount + 1
        
        SrcSheet.Cells(sRow, "B").Copy Destination:=DestSheet.Cells(dRow, "E")
        SrcSheet.Cells(sRow, "C").Copy Destination:=DestSheet.Cells(dRow, "K")
        SrcSheet.Cells(sRow, "D").Copy Destination:=DestSheet.Cells(dRow, "AT")
        SrcSheet.Cells(sRow, "D").Copy Destination:=DestSheet.Cells(dRow, "Y")
        DestSheet.Cells(dRow, "L").Value = "1004"
        dRow = dRow + 1
       [blue] sRow = 1  [/blue]
     End If
        
  Next sRow
  
  MsgBox sCount & " rijen geüpdatet"

End Sub

  • pedorus
  • Registratie: januari 2008
  • Niet online
Ligt iets als vlookup niet meer voor de hand? In ieder geval zou ik DestSheet.Range("AQ65536").End(xlUp).Row
in een variabele stoppen, en sRow niet in de loop zetten (sRow = 1) zodat je een nette loop krijgt, enkel dat verhelpt je probleem waarschijnlijk niet. Daarnaast wil je misschien een else conditie opnemen, of dRow=dRow+1 buiten de loop doen ofzo, of kan die hele if weg. Dat ligt eraan wat je nu eigenlijk wil doen... :p

Wellicht denk je dat de volgorde in items!aq hetzelfde is als in prijslijst!a, behalve dat er sommige ontbreken, echter is in werkelijkheid de volgorde anders of ontbreekt een item in je prijslijst.

Vitamine D tekorten in Nederland | Middelen tegen corona


  • cschot
  • Registratie: februari 2008
  • Laatst online: 07-12-2020
pedorus,

dank je voor de tips.
Ik heb uitgezocht dat Het 14e item niet in prijslijst staat.
Hoe kan ik in de loop aangeven dat hij deze over moet slaan,
of een andere kleur geven? in iedergeval moet hij die kunnen herkennen.

Die if moet erin, om te kijken in welke rij item matcht met welke rij in prijslijst.
Vlookup is niet echt een optie, omdat de data nogal verandert in ITEMS

De bedoeling is om een Workbook te maken
Waarin in 2 sheets data geplakt wordt uit een geexporteerd csv extract van exact en wanneer er op een knop gedrukt wordt en
een script gedraaid wordt om de prijzen te updaten. Daarna wordt de sheet items als csv bestand opgeslagen.
Waarna het weer geimporteerd in exact.

Ik dacht dat dit de beste oplossing was om de prijzen te updaten, of heeft iemand een beter idee?


Nintendo Switch (OLED model) Apple iPhone 13 LG G1 Google Pixel 6 Call of Duty: Vanguard Samsung Galaxy S21 5G Apple iPad Pro (2021) 11" Wi-Fi, 8GB ram Nintendo Switch Lite

Tweakers vormt samen met Hardware Info, AutoTrack, Gaspedaal.nl, Nationale Vacaturebank, Intermediair en Independer DPG Online Services B.V.
Alle rechten voorbehouden © 1998 - 2021 Hosting door True

Tweakers maakt gebruik van cookies

Bij het bezoeken van het forum plaatst Tweakers alleen functionele en analytische cookies voor optimalisatie en analyse om de website-ervaring te verbeteren. Op het forum worden geen trackingcookies geplaatst. Voor het bekijken van video's en grafieken van derden vragen we je toestemming, we gebruiken daarvoor externe tooling die mogelijk cookies kunnen plaatsen.

Meer informatie vind je in ons cookiebeleid.

Sluiten

Forum cookie-instellingen

Bekijk de onderstaande instellingen en maak je keuze. Meer informatie vind je in ons cookiebeleid.

Functionele en analytische cookies

Deze cookies helpen de website zijn functies uit te voeren en zijn verplicht. Meer details

janee

    Cookies van derden

    Deze cookies kunnen geplaatst worden door derde partijen via ingesloten content en om de gebruikerservaring van de website te verbeteren. Meer details

    janee