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

Formules kopieren

Status
Niet open voor verdere reacties.

Dappre

Gebruiker
Lid geworden
28 mei 2017
Berichten
102
Beste forumleden,

Middels de volgende code kan ik een formule met hyperlink doorkopieren naar verschillende tabbladen in een exel file.
Dit gebeurd allemaal netjes voor de gehele kolom AE waar ook de betreffende link moet worden toegepast.

PHP:
Dim Hrm As Long
For HrmOverig = 5 To 9
With Sheets("HRM")
.Range("AE2:AE" & Application.Max(2, .Cells(.Rows.Count, 15).End(xlUp).Row)) = "=IF(O2>0,HYPERLINK(HYPERLINK((""https://portal.hrm/files"")&""/""&LEFT(TEXT(VALUE(O2),""00000000""),2)&""/""&RIGHT(VALUE(O2),1)&""/""&REPT(""0"",8-LEN(VALUE(O2)))&(VALUE(O2)&"".tif"")),O2),"""")"
End With
Next

Nu wil ik aanvullend op deze code nog een aantal formules doorvoeren.

Bijv.

=VERT.ZOEKEN(A2;'C:\test\[test1.0.xlsm]test!$K:$M;2;ONWAAR)

In kolom Z

=VERT.ZOEKEN(A2;'C:\test\[test2.0.xlsm]test!2!$K:$M;3;ONWAAR)

In kolom AA

=VERT.ZOEKEN A2;'C:\test\[test3.0.xlsm]test!3!$K:$L;2;ONWAAR)

In kolom AB

=VERT.ZOEKEN(A2; A2;'C:\test\[test4.0.xlsm]test4!$E:$G;3;ONWAAR)

In kolom AC

=ALS(ISFOUT(Z2)=WAAR;VERT.ZOEKEN(AC3;hulpl!$H:$O;8;ONWAAR);" ")

In kolom AD

Los ervan of de directory van de link werkt of niet, deze kan ik zelf simpel aanpassen wil ik deze formules opnemen in de bovenstaande code.

Wie kan mij helpen?
 
TIP:
Zorg dat de werkende formule al in een cel staat.
Neem een macro op.
Selecteer deze cel, klik vervolgens in de formule balk en druk op enter
Stop de opname.

Kijk hoe Excel in VBA de formule vertaald heeft en pas dit dan toe in je code.
 
Of: selecteer de cel met de formule.
In VB-editor Ctrl+G drukken.
Invoeren in venster "Direct".
Code:
?activecell.formula
en druk op Enter.
De vertaalde formule verschijnt eronder.
 
Of: selecteer de cel met de formule.
In VB-editor Ctrl+G drukken.
Invoeren in venster "Direct".
Code:
?activecell.formula
en druk op Enter.
De vertaalde formule verschijnt eronder.

Super uitleg! Werkt prima, hoe krijg ik hem onder de juiste kolom? Want die verwijzing zit er nog niet in.
 
lukt het je niet te spieken in je bestaande code en daarin (begin van de regel) het celadres aan te passen achter Range(" ?
 
Wat kan ik trouwens aan een visual basic error 400 doen. Ik krijg deze in combinatie met de aanpassing van de toegevoegde formules.

Gaat specfiek om deze

PHP:
.Range("AD2:AD" & Application.Max(2, .Cells(.Rows.Count, 15).End(xlUp).Row)) = "=IF(ISERROR(Z2)=TRUE,VLOOKUP(AC2,Test!$H:$O,8,FALSE)"
 
Laatst bewerkt:
Er mist sowieso een haakje sluiten in...
Code:
[COLOR=#CC0000][FONT=monospace]"=IF(ISERROR(Z2)=TRUE,VLOOKUP(AC2,Test![/FONT][/COLOR][COLOR=#CC0000][FONT=monospace]$H[/FONT][/COLOR][COLOR=#CC0000][FONT=monospace]:[/FONT][/COLOR][COLOR=#CC0000][FONT=monospace]$O[/FONT][/COLOR][COLOR=#CC0000][FONT=monospace],8,FALSE)"[/FONT][/COLOR]
Daarnaast mis ik de falsepart in de formule.

En terzijde; de '=True' kan er ook nog wel uit.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan