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

Terug vinden van VB code

Status
Niet open voor verdere reacties.

Peter B

Gebruiker
Lid geworden
8 feb 2007
Berichten
672
Sinds kort ben ik geinteresseerd in het gebruik van VB in Excel. Nu zijn er tal van handleidingen te vinden, maar 1 vraag heb ik daar niet uit kunnen halen. En trouwens ook niet via de befaamde zoekfuncties ... Nl. het volgende:

Ik heb een Excel sheet (zonder password beveiliging etc.) waarvan ik weet dat er een VB-code aan hangt. Deze code wordt voorafgegaan door
Code:
Private Sub Workbook_Open()

End Sub
Kortom, het zal wel verborgen zijn. Ik kan het i.i.g. niet (meer) vinden.

Hoe kan ik deze code tonen?
 
Ga naar Ontwikkelaars / Pogrammacode weergeven.
Klik daarna links op ThisWorkbook.
 
Ga naar Ontwikkelaars / Pogrammacode weergeven.
Klik daarna links op ThisWorkbook.
Tsja. Dat dacht ik. Maar er wordt alleen een leeg scherm getoond. Ook heb ik op die manier alle sheets afgezocht. Helaas zonder resultaat.

Ik gebruik trouwens Excel 2003. Mogelijk werkt het hier ook nog anders?
 
1.
Klik met de rechtermuisknop op de tab van een werkblad (waar de naam op staat) en kies in het dan tevoorschijn komende menu: Programmacode weergeven. Je komt dan in een venster, dat - als het goed is - in twee kolommen is verdeeld. Is het niet in twee kolommen verdeeld, kies dan in het menu: Beeld - Projectverkenner. Dubbelklik dan in de linkerkolom op "This Workbook".

2.
Het is ook mogelijk dat tegelijk met het bestand waarin de macro zijn werk moet doen, het bestand Persnlk.xls mee opstart. Als dat zo is, dan kun je dat zien in de linkerkolom bovenaan. Als dat bestand er staat, klik dan op het plusteken, zodat je kunt zien waaruit het bestaat, en dubbelklik dan ook in Perslk.xls op "This Workbook".

Als je 1. en 2. uitgevoerd hebt, dan is het vrijwel zeker dat je de code ziet staan.
 
Laatst bewerkt:
Hoe weet je dat er VB-code gebruikt is? Is het geen macro?

Wanneer er geen gevoelige info in staat kun je dat bestandje misschien posten.
 
Macro? VB code? Ik geloof dat ik nog veel moet leren. Ik dacht dat dat hetzelfde was. Maar goed. Het zou toch in de VB Editor moeten worden weergegeven?

Het probleem is dat het bestand wel gevoelige informatie bevat. Dus ik kan hem niet posten.

Over naar het stappenplan van zapatr.
1. Ik kom in de VB Editor, met daarin 3 vensters:
-a: Project - VBAProject (ook wel de projectverkenner)
-b: Eigenschappen (van het geselecteerde blad)
-c: Een leeg venster met bovenaan twee dropdown boxes (Algemeen) & (Declaraties)
Als ik vervolgens dubbelklik op "ThisWorkbook" wordt er alleen een nieuw leeg scherm geopend met dezelfde dropdown boxes (Algemeen) & (Declaraties)
2. In de projectverkenner (ik neem aan dat dat ook bij jou de linkerkolom is) staat alleen het volgende:
Code:
- VBAProject (naam)
    - Microsoft Excel -objecten
          Blad1
          Blad2
:
          Blad8
          ThisWorkbook

Kortom. Ik begin het gevoel te krijgen dat deze gek weer meer kan vragen dan 10 wijzen kunnen beantwoorden ... En ik maar denken dat het een zo voor de hand liggend probleem was :rolleyes:
 
Laatst bewerkt:
VB = Visual Basic, een Windows-toepassing.
VBA = Visual Basic for Applications (voor Outlook, Word, Excel, Access, Powerpoint, ...).
Die begrippen worden (ten onrechte) nogal eens door elkaar gebruikt.

Op grond van wat je hebt gedaan n.a.v. mijn aanwijzingen, zou ik niet weten waar je de code moet zoeken. Maar hoe weet je het begin en einde van de code? En: wát doet die code?
 
VB = Visual Basic, een Windows-toepassing.
VBA = Visual Basic for Applications (voor Outlook, Word, Excel, Access, Powerpoint, ...).
Die begrippen worden (ten onrechte) nogal eens door elkaar gebruikt.
OK. Weer wat geleerd.

Op grond van wat je hebt gedaan n.a.v. mijn aanwijzingen, zou ik niet weten waar je de code moet zoeken. Maar hoe weet je het begin en einde van de code? En: wát doet die code?
Ik weet dat er code is (en ik heb de code gekopieerd) omdat ik het een keer voor elkaar heb gekregen om de code te laten crashen. Wist ik nog maar hoe ...

Dit is de (iets aangepaste) code:
Code:
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)

    If Target.Column = 2 Then
        i = Target.Row
        Do Until LCase(Cells(i, 1)) = "tekst"
            i = i - 1
            rowmin1 = i
        Loop
        Select Case LCase(Cells(Target.Row, 2))
            Case "a"
                Cells(rowmin1, 2) = "Hieronder staat een A"
                Cells(rowmin1, 2).Interior.ColorIndex = 4
                Cells(rowmin1, 2).Font.ColorIndex = 0
            Case "b"
                Cells(rowmin1, 2) = "Hieronder staat een B"
                Cells(rowmin1, 2).Interior.ColorIndex = 2
                Cells(rowmin1, 2).Font.ColorIndex = 0
            Case "c"
                Cells(rowmin1, 2) = "Hieronder staat een C"
                Cells(rowmin1, 2).Interior.ColorIndex = 1
                Cells(rowmin1, 2).Font.ColorIndex = 2
        End Select
        Debug.Print Target.Column
    End If
End Sub

Kortom, op basis van de waarde in een cel wordt de cel daarboven voorzien van een tekst en opmaak. N.B. Het zijn meer waarden, zodat dit niet met voorwaardelijke opmaak (In Excel 2003) kan.

Ik kan het niet uitstaan dat ik de code niet op een normale manier tevoorschijn kan toveren. En ik kan dus ook geen extra waarden toevoegen ...
 
Dubbelklik in de projectverkenner op Blad1, daarna op Blad2, enz., dan kom je de code wellicht tegen.
 
Het is nochtans gemakkelijk, als je bij dubbelklikken op resp. Blad1, Blad2 enz..... en op Thisworkbook geen code tevoorschijn kunt halen zit ze er niet in.

PS. Kun je het bestand niet posten?

Cobbe
 
Ik zal er niets van snappen. Ik heb na talloze vruchteloze pogingen hier mijn probleem gepost. Ik heb van alles geprobeerd zonder resultaat. En nu ... Nu zie ik gewoon keurig de code staan als ik "ThisWorkbook" dubbelklik ... Dat is dus het goede nieuws ...

Ik zou echter niet weten wat ik heb gedaan zodat de code nu wel getoond wordt. Ik had Excel al herstart, m'n PC herstart etc. zonder resultaat. Nu had ik m'n Excel dichtgegooid, ik open hem om te kijken of ik de "gevoelige" informatie eruit kan halen, ik controleer eigenwijs als ik ben of ik de code te zien krijg en voila.

Dank voor alle pogingen tot hulp!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan