Help!

PC-Problemen?
De vrijwilligers van Oplossing.be zoeken gratis met u mee!

Hulp bij posten

Recente topics

Auteur Topic: Code in visual basic?  (gelezen 2199 keer)

0 leden en 1 gast bekijken dit topic.

Offline dimy

  • Volledig lid
  • **
  • Berichten: 205
  • Oplossing.be
Code in visual basic?
« Gepost op: 27 januari 2006, 08:22:54 »
Vraag voor de echte specialisten...
Al een hele tijd ben ik op zoek naar een manier om rijen uit een bepaalde sheet te saven in een andere sheet onder de datum van 'saven'. Afhankelijk van een opgevulde cel.
Mijn vraag is waarschijnlijk zo ingewikkeld dat ik in het bestand hierbij gevoegd wat meer uitleg geef.
Onze vriend WG heeft reeds een poging gedaan maar de code die hij voorsteld werkt niet altijd zoals ik het zou willen.
Bedankt voor jullie breinbrekend werk!
Desktop Windows 10   NLD 64 bits
ASUSTeK COMPUTER INC. H110M-C 8 GB Intel(R) Core(TM) i7-7700 CPU @ 3.60GHz - 1400
Intel(R) HD Graphics 630 1024MB 1920  x 1080
Realtek High Definition Audio
Western Digital WDC WD10EZRZ-00HTKB0
 Samsung SSD 860 EVO 250GB  C:\ NTFS 232 GB 191 GB
                                                D:\ NTFS 1Tb
McAfee VirusScan Enterprise
Windows Defender
Windows Firewal Enabled True

Offline WG

  • Ervaren lid
  • ***
  • Berichten: 366
  • Geslacht: Man
  • http://www.wimgielis.be
Re:Code in visual basic?
« Reactie #1 Gepost op: 27 januari 2006, 20:17:32 »
Hier is de aangepaste code. Ik bedenk me nu dat ik nogal verward moet geweest zijn toen ik de vorige code schreef.

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    Dim i As Integer, j As Integer, vervangen As Boolean
    vervangen = False
   
    For i = 3 To Worksheets("begin").Range("A65536").End(xlUp).Row
        If Left(Worksheets("begin").Cells(i, 3), 2) = "ok" Then
           
            For j = 3 To Worksheets("input").Range("A65536").End(xlUp).Row
                If Worksheets("begin").Cells(i, 1).Value = Worksheets("input").Cells(j, 1).Value Then
                    Worksheets("input").Cells(j, 6).Value = Worksheets("begin").Range("A1").Value
                    Worksheets("input").Cells(j, 2).Value = Worksheets("begin").Cells(i, 2).Value
                    vervangen = True
                Else
                End If
            Next j
           
            If vervangen = False Then
                Worksheets("input").Cells(Worksheets("input").Range("A65536").End(xlUp).Row + 1, 1).Value = _
                    Worksheets("begin").Cells(i, 1).Value
                Worksheets("input").Cells(Worksheets("input").Range("A65536").End(xlUp).Row + 1, 6).Value = _
                    Worksheets("begin").Range("A1").Value
            Else
            End If
       
        Else
        End If
    Next i

    Worksheets("begin").Activate
    Worksheets("begin").Range("A1").Activate
   
End Sub


De verwarring is eigenlijk nog niet helemaal opgelost; Wil je ook dat de rijen in C, met OK in de kolom C, gedeleted worden nadat ze overgezet zijn? Want dat gebeurt nu niet met deze code. Maar ze werkt wel (heb ze beperkt getest).

WG
Gelieve uw systeemgegevens in te vullen. Klik HIER voor meer informatie.

Offline dimy

  • Volledig lid
  • **
  • Berichten: 205
  • Oplossing.be
Re:Code in visual basic?
« Reactie #2 Gepost op: 28 januari 2006, 10:18:59 »
Beste WG,
Hartelijk dank voor de code die je bedacht hebt.Ze werkt inderdaad zoals ik het wens.
Het leegmaken van rijen is niet noodzakelijk. Daar gebruik ik reeds een code voor alvorens bij de aanmaak van een nieuw opdrachtblad.
Gij zijt nen echte specialist man!
Bedankt.
Desktop Windows 10   NLD 64 bits
ASUSTeK COMPUTER INC. H110M-C 8 GB Intel(R) Core(TM) i7-7700 CPU @ 3.60GHz - 1400
Intel(R) HD Graphics 630 1024MB 1920  x 1080
Realtek High Definition Audio
Western Digital WDC WD10EZRZ-00HTKB0
 Samsung SSD 860 EVO 250GB  C:\ NTFS 232 GB 191 GB
                                                D:\ NTFS 1Tb
McAfee VirusScan Enterprise
Windows Defender
Windows Firewal Enabled True

 


www.combell.com