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

Locatie van vba-code

Status
Niet open voor verdere reacties.

Senso

Inventaris
Lid geworden
13 jun 2016
Berichten
11.295
Besturingssysteem
W10 Pro en W11 Pro
Office versie
Office 2007 H&S en Office 2021 Prof Plus
Waar exact plaatst men een vba-code die op alle documenten moet werken. Mooi zou een screenshot zijn. Is het juist dat dit dan automatisch een .xlsm bstand wordt (alle). Ik heb ShowF en die wil ik in alle Excel- documenten hebben. In welke map zit die code en kan iemand informatie geven over hoe dat te beveiligen, zeker te stellen.
 
Dat zal weer een week studie kosten. In ieder geval bedankt.
 
Als je een macro maakt in je Persoonlijke Macrowerkmap (Personal.xlsb) is die toch beschikbaar in alle bestanden waar je mee werkt? Of bedoel je dat niet? Die macro kun je dan vervolgens in elke willekeurige module zetten, mits dat maar dus in Personal.xlsb zit.
 
Senso,

Je bespaart jezelf een hoop tijd door te beginnen met een Basisboek VBA.
Over de opbouw, volgorde, nivo-opbouw van zo'n boek is nagedacht, in tegenstelling tot de brokstukken die je op internet kunt vinden.
Leren vergt didaktiek en didaktische principes, die een boek (meestal) bevat, maar een webpagina niet.

Ik ken bijv. een persoon die eerst een VBA-boek van 1200 pagina's had doorgelezen, voordat hij überhaupt aan het programmeren sloeg. Toen was voor hem programmeren niet zoiets als eindeloos 'uitproberen', maar gericht zoeken op basis van de pincipes van waaruit VBA opgebouwd is.
 
Laatst bewerkt:
@snb
Met dank voor het advies. Ik ga geen cursus volgen. Ik werk bij de dag. Morgen weet ik het al niet meer.
@Octafisch
Ik heb de eerste video van Abcude nauwkeurig bekeken en dan voer ik het uit en dan gaat het nog mis > geen PERSONAL.XLSB.
Na twee uur heb ik dan resultaat en dan krijg je compileerfout en heb je weer pure ellende.
Dus nu kan ik geen bestand meer openen.

Dus wil dat dan ook zeggen als er in de opgeslagen modules/codes fouten zitten dan kun je niets meer openen? Dat schiet op.
Ik heb een leeg document en dat weigert al!

Compileerfout.jpg
 
Laatst bewerkt:
Heb je wel verborgen bestanden tonen aangezet?
 
Heb je wel verborgen bestanden tonen aangezet?
Zeker wel, maar als ik exact doe wat gezegd wordt dan gaat het altijd fout.
 
Kun je wel in de verkenner naar de opgegeven map XLSTART gaan?
 
Het plaatje dat je toont laat exact zien wat er niet goed is.
Dat heeft niks te maken met waar die code staat.
 
Senso,

Ik heb niet over een cursus gesproken, maar over een boek.

Mod edit: Overige tekst verwijderd.
 
Laatst bewerkt door een moderator:
Het plaatje dat je toont laat exact zien wat er niet goed is.
Dat heeft niks te maken met waar die code staat.
Wat is er fout, wat kan er fout zijn als ik de code exact overneem van een ander bestand en het werkt daar vlekkeloos.
Het bestand staat in de map XLSTART. Ik heb zelfs de module geëxporteerd en geïmporteerd. Wat kan er dan fout gaan?
 
Je kan nooit Sub ShowF en Function ShowF direct onder elkaar hebben
Wel dit:
Code:
Sub ShowF
...
End Sub

Function ShowF
...
End Function

Maar dan niet in dezelfde module.
 
Laatst bewerkt:
Dat is gekomen doordat ik een macro moest simuleren/opnemen om die PERSONAL.XLSB te maken, want die was er niet. Later heb ik wat jij zegt gewijzigd en het origineel gekopieerd. Wat mij nu opvalt is dat als ik in het originele document in de cel =ShowF begin te typen de optie ShowF wordt aangeboden door de lijst en in het nieuwe bestand niet. Hoe kan dat?

De laatste vier regels van de screenshot staan nu nog in de module.
 
Laatst bewerkt:
Dan heb je die Function niet in een Module gezet.
Ik weet niet of het met de PERSONAL.XLSB te maken heeft, die heb ik nog nooit gebruikt.
 
Laatst bewerkt:
Code:
Function FORMULETEKST(Rng As Range) As String
    If Rng.HasArray Then
    FORMULETEKST = "{" & Rng.Formula & "}"
    Else
    FORMULETEKST = Rng.Formula
    End If
End Function

Moet bovenstaande er dan bij? Die staat als Module2 in het orgineel.
 
Ik werk vaak in zakelijke omgevingen waarbij men aanpassingen aan personal.xlsb beperkt of simpelweg met enige regelmaat overschrijft.

Mijn oplossing daarvoor is dat ik zelf een werkmap maak die ik "toolkit" of iets dergelijks noem. Daarin zet ik macro's met bepaalde functies. en dat bestandje open ik dan elke ochtend als ik met excel ga werken. En dan heb ik ook mijn favoriete en relevante macro's beschikaar.

Ik heb de indruk dat dit voor jou ook kan werken Senso. Gewoon een verder lege werkmap of misschien met een bescijring op blad 1 welke macro's / VBA code erin zit. Dat bestand dan open hebben, aldan niet verborgen.
Dan heb je jou favoriete macro's beschikbaar maar hoef je geen week studie te volgen om personal.xlsb te traceren. Dan kun je dat nog eens uitzoeken als je je heel erg verveeld in een vakantie of regenachtige zondag.

Dus gewoon als tip, maak een aparte werkmap en zet die open als je de macro's daarvna wil gebruiken. Net iets minder geavanceerd dan altijd standaard beschikbaar via personal maar wel eenvoudig uit te voeren.
 
Je kan ik Excel gewoon aangeven van welke map de bestanden moeten worden geopend.
Zet daarin dus je Toolkit bestand met eigen functies.
 
Laatst bewerkt:
Post 18 begrijp ik niet. Hoe kan een macro/vba in het ene, nou in een ander bestand werken? Dus graag een voorbeeldbestand. Ik zal een code plaatsen.

Code:
Function ShowF(Rng As Range)
Application.Volatile True
ShowF = Rng.FormulaLocal
End Function

@Edmoor
Heb jouw "UDF in the…" wel tien keer uitgevoerd. Exact zoals omschreven. Het werkt wel, alleen in dat document. Maak je een nieuw document dan werkt het niet en is het verdwenen en open je hetzelfde document is het ook verdwenen (verwijzing). Ik heb zorgvuldig gehandeld. Je leest ook in die topic, is dat geldig voor alle documenten? Daar krijg je dan geen antwoord op. Nee dus.

"Je kan ik Excel gewoon aangeven van welke map de bestanden moeten worden geopend."
Waar geef je dat aan?
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan