Hulp met macro

Status
Niet open voor verdere reacties.
Goedemiddag,

Wie zou hier nog eens naar willen kijken svp?
Dit gaat boven mijn kunnen..
 
Laatst bewerkt:
Wie o wie heeft een oplossing voor me...

De huidige macro vergelijkt de ISO codes van een lijst met bepaalde codes in een ' bronbestand' en als deze codes voorkomen in de lijst dan worden ze verwijderd.
Echter zou ik graag willen dat, indien de codes voorkomen, dat deze dan onderaan de lijst komen en betreffende regel(s) geel gekleurd worden.



Alvast enorm bedankt voor de hulp.
 
Op verzoek van TS verplaatst naar VBA
 
Goedemiddag allen,

Heeft iemand wellicht een oplossing hiervoor??
Ik heb geen idee hoe ik dit moet aanpassen.

Alvast bedankt!
 
Goedenavond @JVeer,

Aangezien jij die macro voor mij hebt gemaakt was ik benieuwd of je nogmaals zin/tijd had om eens te kijken of je iets kunt aanpassen.

De huidige macro vergelijkt de ISO codes van een lijst met bepaalde codes in een ' bronbestand' en als deze codes voorkomen in de lijst dan worden ze verwijderd.
Echter zou ik graag willen dat, indien die codes voorkomen, dat deze dan onderaan de lijst komen en betreffende regel(s) geel gekleurd worden.


Alvast ontzettend bedankt!
 
Vraagje voor de VBA experts

Goedemiddag,


Ik heb nog even de werkinstructies bekeken en overlegt met collega's.

Wij halen 3x per dag een lijst van verwachte, reeds aangeleverde (en soms al vertrokken) containers op onze terminal van een site af.
Van deze lijst gebruiken wij echter maar 7 kolommen (zie post 1,20).
De containers die uiteindelijk overblijven op die lijst moeten worden vergeleken met een ander (bron)bestand (genaamd: ISO codes (Open top- en flat containers).

Alleen 's ochtends om 07.00 uur moeten de eventuele open top- en flat containers die op de lijst voorkomen apart worden gemaild naar betreffende leidinggevenden (en worden daarna verwijderd uit de lijst). De overige containers van diezelfde lijst worden naar andere afdelingen verstuurd.
's Middags om 15.00 uur en 's avonds om 23.00 uur moeten de containers, als ze in het bronbestand voorkomen, uit de lijst verwijderd worden, en word het bestand wederom naar diezelfde afdelingen gemaild.

De macro die ik nu heb vergelijkt de ISO codes met het bronbestand, verwijderd onnodige regels en kolommen etc. Deze werkt prima.
Graag zou ik zien dat de containers welke eventueel verwijderd worden (alleen de open top en 'flat' containers) dat deze op een apart tabblad worden gezet zodat de collega's deze makkelijk verder kunnen bewerken.

Hoop dat er iemand is die dit voor elkaar krijgt.
 
Graag zou ik zien dat de containers welke eventueel verwijderd worden (alleen de open top en 'flat' containers) dat deze op een apart tabblad worden gezet zodat de collega's deze makkelijk verder kunnen bewerken.

Waaruit bestaat de 'verdere bewerking'?

Waarom probeer je/jullie niet eerst de (bijzonder heldere) code goed te lezen en te begrijpen?
Dan kunnen jullie zo'n aanpasing zelf uitvoeren.
 
Goedenavond snb,

De verdere bewerking omhelst verder niet zo veel. De betreffende gegevens worden gekopieerd en middels email verzonden naar de voorman welke daar weer wat acties op onderneemt.
De andere lijst met alle gearriveerde containers (excl. de open top en flat containers) word middels mail verstuurd naar de execution supervisor en afdeling planning e.d. welke er uiteindelijk voor zorgen dat betreffende containers worden gescand.

Dankzij de uitleg van Cow18 weet ik een beetje wat de macro doet, maar verder ben ik al blij dat ik een normale Excel formule een beetje kan lezen en begrijpen.. ;)
Het VBA gebeuren is nog een erg grijs gebied voor me.

Ik weet dat gegevens van de lijst vergelijken moeten worden met het bronbestand en, indien gevonden, moeten worden gekopieerd naar een ander tabblad.
Maar hoe je dit in een macro moet gieten...:confused: geen idee!
 
Laatst bewerkt:
Ik probeer de code regel voor regel te ontcijferen.

Naar mijn idee moet de lijst welke ik van de site haal vergeleken worden met het bronbestand met ISO codes.
Dus, na wat zoekwerk, zou ik denken dat er iets van 'CompareRange' in de code zou moeten staan om dit te bewerkstelligen... en indien er iets gevonden is zou 'Set
CompareRange moeten volgen dacht ik..
Echter staat dit niet in de code

Zit ik uberhaupt een beetje in de juiste richting??
 
je iso-containers zitten als verborgen blad in deze werkmap.
Je start de macro "OpenExportFile" op, kies je laatste download-file op en klaar is kees.
Bovenin zou je, afhankelijk van je username, anders nog een andere subdirectory kunnen kiezen. Nodig ?
 

Bijlagen

Goedenavond cow18,

Ik weet niet of het uitmaakt, maar het bronbestand met die ISO codes staat bij ons op een algemene schijf (G) en zou dus voor iedereen hetzelfde path moeten wezen. Dus dat scheelt dan weer denk ik..

Ik heb geprobeerd de macro te draaien maar krijg de melding 'Het subscript valt buiten bereik'. Geen idee wat dat betekent.

Ik zal ongetwijfeld iets niet juist doen..

Is het wellicht makkelijker om, als de uiteindelijke lijst klaar is, deze daarna te vergelijken met het bestand met die ISO codes. Als er dan containers in de lijst staan met een ISO code welke overeenkomt met het bronbestand deze daarna uit de lijst (sheet 1) te verwijderen en naar sheet 2 te verplaatsen?
 
Laatst bewerkt:
- is de naam van je werkblad goed ?
- hoe vaak veranderen die codes, 1 keer in 6 maand ?
 
De naam van het werkblad is, in mijn geval:
ExportResults_office_MKR001_Sun Dec 19 00_05_24 CET 2021

Wanneer ik het bestand van de site haal komt er 'MKR001' te staan maar dit is bij iedere collega anders. En de datum/tijd is de datum/tijd dat het bestand via de website is gegenereerd.

Bedoel je met de codes die veranderen de ISO codes in het bronbestand? Deze wijzigen in principe niet meer.
 
dat is de werkmap die je ergens van de site afhaald hebt.
je werkblad staat hier
Code:
With Sheets("MijnContainers")                              'in je eerste werkblad
en vermoedelijk heb je die macro in je andere bestand geplakt, dus matcht dat niet.

Als die codes nooit veranderen, waarom de moeite doen om die van de G af te halen, doet dat de volgende keer als er nog een keer iets verandert, of doe dat 1 keer per week/maand.
En als die MKR001 telkens voorkomen bij iedereen, dat kan de rest van die tekst daar neergezet worden, zodat je een idee hebt over het tijdstip.
Sorry, eigenlijk bedoel ik de rest van de tekst na de 3e "_", dus "Sun_..."
 
Laatst bewerkt:
Ik denk dat ik het nog niet helemaal duidelijk heb..

Hoe pas ik die macro dan aan zodat deze op de werkplekken bij m'n diverse collega's ook werkt..?
Want als een collega een bestand van de site haalt zal bij hem/haar iets anders staan (ExportResults_office_??initialen van medewerker??_Sun Dec 19 00_05_24 CET 2021)

JVeer heeft die macro gemaakt waarbij de codes vergeleken werden met dat bronbestand. Waarom die 'moeite'? Geen idee, omdat ik daar geen verstand van heb ;)
Ik dacht in het begin overigens dat het wellicht makkelijker zou zijn om die ISO codes eenmalig in die macro zelf te zetten zodat je niet hoeft te vergelijken met bestanden op een andere paths e.d...
Want als iemand de path of de naam wijzigt dan werkt de macro niet meer. En als die codes in de macro zelf zitten heb je daar geen last van.. Maarja zo dacht ik erover als leek zijnde.
 
Laatst bewerkt:
idiot-proof hoop ik.

je iso-codes staan niet in VBA, dat is gewoon onhandig en, in geval van latere wijzigingen, niet echt gebruiksvriendelijk.
Zijn er nieuwe, maak dat tabblad zichtbaar, overschrijf ze met de nieuwe codes en verberg het blad opnieuw. Je zou dat blad anders nog kunnen beveiligen (zonder paswoord).

Je moet nu nog enkel je laatste download-bestand op het netwerk aanduiden en klaar is kees.
Er wordt altijd in het eerste blad, ongeacht de naam, geschreven !!!

ik heb de laatste versie, die van JV?, genomen en enkel die ISO-check er aan toegevoegd, dus inhoudelijk is er (bijna) niets gewijzigd.
 
Laatst bewerkt:
Goedemorgen cow18,

De collega's loggen in op een bepaalde website, vinken daar wat opties aan en daarna verschijnt het te bewerken overzicht in een Excel sheet.
Deze sheet wordt geopend en direct bewerkt, dus niet eerst opgeslagen. Deze sheet heeft dan dus geen verborgen tabblad.
In principe hoeft men dus geen bestand te selecteren op het netwerk. (excuus, dit had ik niet vermeld..)


Zou het eventueel zo kunnen dat de containers, welke uiteindelijk op het overzicht staan, maar een ISO code hebben welke voorkomt in het bestand "ISO codes Open Top....' dat deze containers van blad 1 worden verwijderd en naar blad worden gekopieerd?
Dus blad 1 zijn alle containers welke 'arrived' zijn, scheepsnaam hebben etc, etc en op blad 2 komen dan de containers welke 'arrived' zijn etc.. maar welke een open top of flat container zijn.
Eventueel blad 1 'scanlijst' noemen en blad 2 'open top/flats'.
 
Laatst bewerkt:
toch ga je op een bepaald moment 2 werkmappen open moeten hebben,
- de map met de macro en de verborgen ISO-codes (=RMK), die kan ik niet anders uit mijn hoed toveren.
- de nieuw gedownloade file.

Heb je beiden open staan, dan laat je de macro lopen.
 
Laatst bewerkt:
Als dat bestand met de ISO codes op een algemene schijf staat dan kan deze toch aangeroepen worden zoals in die macro van JVeer?
Dan moet iedereen de macro in zijn/haar persoonlijke macromap zetten.

Dus men opent die Excel sheet en start de macro, de onnodige kolommen worden verwijderd etc etc... , daarna wordt het bestand met de ISO codes aangeroepen en, indien in de sheet containers met een ISO code voorkomen die ook in het brondbestand staan worden deze uit blad 1 van de Excel sheet verwijderd en op blad 2 geplaatst (of betreffende regels komen in blad 1 onderaan de lijst en dan bijv. geel gekleurd)

Wie zou mij daarmee willen helpen?
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan