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

Samenvoegen van gegevens uit twee regels op 1 regel

Status
Niet open voor verdere reacties.

markremmel

Gebruiker
Lid geworden
7 okt 2015
Berichten
49
Hallo,

Ik heb een vraag, waarschijnlijk te complex.. maar eens kijken wat iemand er mogelijk van kan bakken :);)

Onderstaande gegevens importeer ik in Excel, elk stukje tekst staat in een 'eigen' cel.

Code:
11:30A	UAE183	B77W	OMDB	EBBR	A6EPB
13:38E	UAE184	B77W	EBBR	OMDB	A6EPB

Is het mogelijk dat ik dit automatisch kan laten omzetten naar 1 regel,
zodat het als onderstaande komt uit te zien?

Code:
11:30A	13:38E	UAE183	UAE184	B77W	OMDB	EBBR	OMDB	A6EPB

Ik hoor het graag als iemand er ideeën over heeft hoe dit aan te pakken!

Alvast hartelijk dank :):):)

Gr,
Mark
 
Laatst bewerkt:
Hier zijn wel mogelijkheden voor denk ik, met VBA wellicht.

Dit is één vlucht (concludeer ik maar even snel), maar hoeveel meer zijn er? En hoe ziet zo'n compleet vluchtschema eruit?

Zou je een representatief voorbeeldbestandje kunnen plaatsen?
 
Laatst bewerkt:
Hoi AlexCel,

Het zijn inderdaad vluchten! Goed gezien ;)
Wat ik in mijn bericht had gezet is inderdaad 1 aankomst en 1 vertrek van hetzelfde vliegtuig.

In de bijlage een voorbeeld bestand zoals ik ze in Excel kan laden (na wat kleine bewerkingen van mijn kant).
Dit is maar een gedeelte van de vluchten, het ligt er net aan om welk vliegveld het gaat maar het kan bijvoorbeeld ook om 1000 vluchten gaan.

Als opmerking wil ik er nog bijplaatsen, dat sommige vluchten geen vertrek hebben en dus maar 1x voorkomen in het overzicht.

Ik hoop dat je iets kunt met het voorbeeld bestandje!

Bekijk bijlage map1.xlsx

Alvast dank!
Mark
 
Ik neem aan dat op registratienummer van het vliegtuig gesorteerd moet worden?

Klopt het dat de eerste 5 regels uit je voorbeeld getransformeerd moeten worden naar onderstaande tabel?
Code:
08:14A	09:19A	SWR786	SWR787	A320	LSZH	EBBR	LSZH	HBIJB
18:16E	19:10E	SWR76T	SWR789	A320	LSZH	EBBR	LSZH	HBIJB
21:20E	-	SWR770	-	A319	LSZH	EBBR	-	HBIPU
 
Laatst bewerkt:
Klopt als een bus (vliegtuig :P)!

Het makkelijkste zou zijn om te sorteren op de eerste kolom,.. dat is de aankomsttijd van het vliegtuig van een betreffende vlucht.
Dus zodat de vluchten op volgorde van aankomst vroeg in de ochtend naar de avond doorlopen.

Gaaf zeg! :):)
 
Code:
Sub M_snb()
   sn = Sheet1.Cells(1).CurrentRegion
   
   For j = 1 To UBound(sn)
      If sn(j, 3) = sn(j + 1, 3) Then
         c00 = c00 & vbLf & Join(Array(sn(j, 1), sn(j + 1, 1), sn(j, 2), sn(j + 1, 2), sn(j, 3), sn(j, 4), sn(j, 5), sn(j + 1, 5), sn(j, 6)), "_")
         j = j + 1
      Else
         c00 = c00 & vbLf & Join(Array(sn(j, 1), "-", sn(j, 2), "-", sn(j, 3), sn(j, 4), sn(j, 5), "-", sn(j, 6)), "_")
      End If
   Next
   
   sn = Split(Mid(c00, 2), vbLf)
   With Sheet1.Cells(1, 16)
        .CurrentRegion.ClearContents
        .Resize(UBound(sn)) = Application.Transpose(sn)
        .CurrentRegion.TextToColumns , , , , 0, 0, 0, 0, -1, "_"
        .CurrentRegion.Sort .Offset
    End With
End Sub
 
Ehm,.. okay! Hahaha super wat je hebt gemaakt SNB.
Kun je me ook uitleg geven hoe hier nu verder mee aan de slag te moeten? :D:D:D

Ik ben hier verder niet los op..
 
@snb, werkt mooi.

Moest alleen sheet1 wel veranderen in blad1.
 
Hahaha, .. ik zie het al. Jullie zijn toppers!
Mogelijk dat jullie me er mee op weg kunnen helpen hoe ik het nu in de praktijk kan gebruiken binnen Excel?
 
Ben ik nog een keertje :D

Het werkt aardig goed! Maaarrr,... heb een vraag;

Uitgaande vluchten, dus vertrek EBBR naar een bestemming die geen aankomst van te voren hebben plaatst het scriptje nu automatisch als binnenkomende vlucht.

Bijvoorbeeld:
Code:
0620	SAS2594	A320	EBBR	EKCH	OYKAW

wordt:
Code:
0620	-	SAS2594	-	A320	EBBR	EKCH	-	OYKAW

Terwijl het eigenlijk moet zijn:
Code:
-	0620	-	SAS2594	A320	-	EBBR	EKCH	OYKAW

Ik weet niet of daar nog iets aan te doen is????

Groetjes,
Mark
 
Tuurlijk, gewoon de code analyseren en zelf even aanpassen..... Leer je een hoop van.:)
 
Daar heb je helemaal gelijk in,.. zou er graag kennis over willen opdoen :)
Maar toch snap ik er helaas helemaal niets van :(

Denk dat het in onderstaande zit, maarja ... waar:

Code:
Else
         c00 = c00 & vbLf & Join(Array(sn(j, 1), "-", sn(j, 2), "-", sn(j, 3), sn(j, 4), sn(j, 5), "-", sn(j, 6)), "_")

Mocht je genegen zijn om te helpen, graag :D:D
 
Het zegt me niets: uitgaand, inkomend, EBBR, A,C E toevoeging aan tijdstip.
 
Ok, ik begrijp je bericht niet helemaal nu.... Begrijp ik het goed dat je niet snapt waar elk woord/tekstblok voor staat?

Code:
Tijd	Vluchtnummer	Type	Vertrek	Aankomst	Registratie
19:28E	EZS15KA	        A319	LSGG	EBBR	        HBJZW
20:20E	EZS19RP	        A319	EBBR	LSGG	        HBJZW

Waarbij het dus kan voorkomen dat een vliegtuig geen inkomende vlucht heeft naar EBBR,.... en alleen vertrekt.
Dus alleen een vlucht EBBR - LSGG (bijvoorbeeld) heeft.
 
Mocht iemand (snb?) genegen zijn om te helpen,... graag!
Ik kom er niet wijs uit,...... :(:(
 
Zoals ik begrepen heb ik de lijst een compleet DAGELIJKS overzicht van inkomende en uitgaande vluchten van vliegveld EBBR (=Brussel).

Het kan voorkomen dat een vliegtuig de dag ervoor al op het vliegveld staat en dus op de dag erna GEEN aankomsttijd heeft, maar wel een vertrektijd.
Ook kan het voorkomen dat een vliegtuig wel een aankomsttijd heeft voor een dag, maar geen vertrektijd omdat het pas (bijvoorbeeld) de volgende dag vertrekt..
Daar doelt TS op in post #12.

Mijn kennis van VBA is nog niet voldoende om de code nog als zodanig om te bouwen. Wellicht dat snb nog eens wil assisteren.

Wat de A,C,E achter de tijden betekent weet ik ook niet exact, maar volgens mij maakt het voor de vraagstelling niet zoveel uit.
 
AlexCel, jij legt het precies goed uit!

Het maakt inderdaad niet uit wat de A, C en E achter de tijden doen,.. ik converteer deze tijden namelijk al naar een 'plat' getal middels de onderstaande formule.
Dit doe ik omdat de tijd die jullie zien gepubliceerd is in UTC en ik deze met de onderstaande regel omzet naar Lokale Tijd in platte tekst.

=TEKST(LINKS(C1;2)+1&DEEL(C1;4;2);"0000")

Hoop dat een en ander duidelijker is geworden en hoop inderdaad dat snb nog eens wil assisteren :D:thumb:
 
Ken jij de F8 toets in de VBeditor en het hulpscherm 'Local' ?

Zo niet, gebruik ze dan eens.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan