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

Automatische hyperlink genereren

Status
Niet open voor verdere reacties.

MartijnLiempde

Gebruiker
Lid geworden
27 mei 2016
Berichten
100
Goedemorgen,

ik ben bezig met een excel document waarbij werkorders gemaakt worden. in de sheet zit een knop genaamd opslaan.
klik ik daarop slaat hij de sheet op onder de naam "werkorder20160000" hier telt hij er elke x 1 cijfer bij op zodat elk werkorder zijn eigen nummer heeft.

de werkorders worden in hetzelfde document ook nog weg gezet in een Sheet genaamd "werkorders", het werkordernummer komt in de eerste kolom te staan.

is het mogelijk dat hij automatisch daar een hyperlink onder plakt zodat wanneer ik op die hyperlink klik, de desbetreffende werkorder geopend word?

Grtz.Bekijk bijlage Werkorder vb.xlsb
 
Je weet waar hij die werkorders opslaat (de locatie) en je weet de bestandsnaam.
Dan kun je er een formule achterzetten die er een hyperlink van maakt.

PHP:
=HYPERLINK(TEKST.SAMENVOEGEN(<<opslaglocatie>>;<<ordernummer>>))
 
Goedemorgen,
zo heb ik het nu in een cel staan achter de desbetreffende werkorder.
HTML:
=HYPERLINK(TEKST.SAMENVOEGEN(\\SBS2011\RedirectedFolders\pepijn\My Documents\Pepijn\Werkorders\Werkorder;werkorders))

het werkt niet helaas, maar volgens mij doe ik ook iets niet helemaal goed.

de werkorder word weggeschreven naar de map Werkorder en dan in die map komen alle werkorders te staan onder de naam werkorder20160001, bij die laatste 4 nummers word er elke x een bij geteld.
dit is de formule waarmee ik dat doe:
HTML:
Public Sub OpslBestand()
Dim NieuwFact As Variant
'kopiëren document als nieuwe factuur
ActiveSheet.Copy
NieuwFact = "\\SBS2011\RedirectedFolders\pepijn\My Documents\Pepijn\Werkorders\Werkorder" & Range("B3").Value & ".xlsx"
ActiveWorkbook.SaveAs NieuwFact, FileFormat:=xlOpenXMLWorkbook
ActiveWorkbook.Close
    With Sheets("werkorders")
    lastrow = Sheets("werkorders").Range("A:I").Find("*", _
    SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
    .Cells(lastrow + 1, "A") = Sheets("Leeg Werkorder").Range("B3")
    .Cells(lastrow + 1, "B") = Sheets("Leeg Werkorder").Range("B2")
    .Cells(lastrow + 1, "C") = Sheets("Leeg Werkorder").Range("B5")
    .Cells(lastrow + 1, "D") = Sheets("Leeg Werkorder").Range("B7")
    .Cells(lastrow + 1, "E") = Sheets("Leeg Werkorder").Range("B6")
    .Cells(lastrow + 1, "F") = Sheets("Leeg Werkorder").Range("E4")
    .Cells(lastrow + 1, "H") = Sheets("Leeg Werkorder").Range("B10")
    .Cells(lastrow + 1, "G") = Sheets("Leeg Werkorder").Range("B9")
    .Cells(lastrow + 1, "I") = Sheets("Leeg Werkorder").Range("A11")
    MsgBox "Werkorder succesvol verwerkt!", vbInformation, "Goed gedaan"
     End With


in de 5e regel staat dus de locatie en de regeling met dat nummer.

alvast bedankt.
 
Goedemorgen,
zo heb ik het nu in een cel staan achter de desbetreffende werkorder.
HTML:
=HYPERLINK(TEKST.SAMENVOEGEN(\\SBS2011\RedirectedFolders\pepijn\My Documents\Pepijn\Werkorders\Werkorder;werkorders))

het werkt niet helaas, maar volgens mij doe ik ook iets niet helemaal goed.
.

Je moet het eerste gedeelte tussen quotes zetten "" en er ontbrak een slash achteraan.
HTML:
=HYPERLINK(TEKST.SAMENVOEGEN("\\SBS2011\RedirectedFolders\pepijn\My Documents\Pepijn\Werkorders\Werkorder\";hier moet je de verwijzing opnemen naar de cel waar het werkordernummer staat(bijv A2) zonder quotes))

probeer dat eens?
 
Probeer het eens door de rode coderegel toevoegen.

Code:
.Cells(lastrow + 1, "A") = Sheets("Leeg Werkorder").Range("B3")
    [COLOR=#ff0000].Cells(lastrow + 1, "A").Hyperlinks.Add .Cells(lastrow + 1, "A"), "\\SBS2011\RedirectedFolders\pepijn\My Documents\Pepijn\Werkorders\Werkorder" & Range("B3").Value & ".xlsx"[/COLOR]
 .Cells(lastrow + 1, "B") = Sheets("Leeg Werkorder").Range("B2")
Of:
Code:
.Cells(lastrow + 1, "A") = Sheets("Leeg Werkorder").Range("B3")
[COLOR=#ff0000]    .Cells(lastrow + 1, "A").Hyperlinks.Add .Cells(lastrow + 1, "A"), NieuwFact[/COLOR]
    .Cells(lastrow + 1, "B") = Sheets("Leeg Werkorder").Range("B2")
 
goedemorgen!!!

Het werkt gelukkig.

Nu het werkt pakt mijn collega niet een vinger maar mijn hele hand.

is het ook mogelijk dat als het perongeluk voor komt dat iemand de cel verwijdert dat ik er met de hand het nummer in kan zetten en dat hij dan ook weer de koppeling maakt met de hyperlink?

Alvast super bedankt!!!
 
Dan doe je dat met change_event en target.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan