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

Meerdere kolommen met data samenvoegen tot 2 kolommen

Status
Niet open voor verdere reacties.

CBR1000RR

Gebruiker
Lid geworden
29 jul 2013
Berichten
8
Hallo forumgebruikers,

Ik heb een excel uitdaging waar ik zelf niet uitkom. UIt een database krijg ik data in excel aangeleverd waarbij in de kolom A1:A1443 datum en tijd staan en in de 2de kolom B1:B1443 de bij horende meetwaarden. In cel C1:C1443 staat de volgende dag en D1:D1443 de daarbij horende meetwaarden enz.... t/m kolom HU1:HU1443.

Nu zou ik graag alle dagen met meetwaarden onder elkaar krijgen om zo data analyses te kunnen doen. Knippen en plakken lukt natuurlijk maar 120x de zelfde handeling moet eenvoudiger kunnen. Ik heb ook al geprobeerd een macro op te nemen maar de ruwe data verschilt nogal in het aantal kolommen en aantal cellen waardoor een opgenomen macro maar voor enkele gevallen functioneert.

Heeft iemand misschien een idee?

Al vast bedankt.

Bekijk bijlage Voorbeeld dataset.xlsx
 
Hoe worden die gegevens in Excel geplaatst? Kan de leverende kant dat niet op een andere manier doen?
 
Op zich is het wel op te lossen. Maar dan moet je het orginele bestand posten en niet eerst zelf wat lopen sorteren en regels verwijderen. Ipv van de genoemde 1443 staan er 1442 in en ergens midden in het bestand is de opmaak anders.
 
De data transfer gaat via een sql server. Helaas heb ik en hebben mijn collega's daar niet genoeg kennis van om dat anders te krijgen.
 
Dan even VenA z'n opmerking bekijken.
 
Ik heb in eerste instantie geprobeerd het orginele bestand te posten maar deze was volgens mij te groot (rood kruisje). in de bijlage heb ik een deel van een onbewerkte sheet gepost er zitten inderdaad soms kolommen bij die niet dezelfde lengte hebben <1443

Bekijk bijlage Voorbeeld dataset.xlsx
 
Laatst bewerkt:
En op welke post reageer je nu?

De data transfer gaat via een sql server. Helaas heb ik en hebben mijn collega's daar niet genoeg kennis van om dat anders te krijgen.
Dit is iets netter: "Helaas hebben mijn collega's en ik daar niet genoeg kennis van om dat anders te krijgen":D
 
Tegenwoordig zet men altijd "ik" op de eerste plaats en als je er wat van zegt dan is het "Onbelangrijk" of "Boeie!".
Het belang wordt helaas niet ingezien. Maar ik en jij dwalen zo af ;)
 
Ho ho hu niet allemaal gelijk gaan posten:D

@CBR1000RR mieter dan de kolommen vanaf G weg weg en plaats het betandje opnieuw. Dus niks lopen sorteren o.i.d. Het gaat om de logica die in jouw bestand zal zitten. En of dit nu 2 of 120 kolommen zijn dat zien we dan wel weer.

@edmoor:thumb:
 
Laatst bewerkt:
Dit is niet altijd het geval. Met de hand heb ik de dagen onder elkaar geplakt en de dubbeling er in laten staan dit maakt voor de analyse geen verschil.
 
Code:
Sub OnderElkaarZetten()
  Dim ikol As Integer, sh As Worksheet, i As Integer
  Sheets.Add after:=Sheets(Sheets.Count)                   'nieuw blad toevoegen voor de uitvoer
  Set sh = ActiveSheet                                     'dat nieuwe blad
  With Sheets("blad1")                                     'blad met je gegevens
    .Range("A2:D2").Copy sh.Range("a1")                    '4 kopcellen kopieren
    ikol = .Range("A1").CurrentRegion.Columns.Count \ 4    'aantal blokken van 4 kolommen
    For i = ikol To 1 Step -1                              'van de laatste naar de 1e blok aflopen
      Range(.Cells(3, (i - 1) * 4 + 1), .Cells(.Rows.Count, (i - 1) * 4 + 1).End(xlUp)).Resize(, 4).Copy sh.Range("A" & Rows.Count).End(xlUp).Offset(1)  'gans blok kopieren
    Next
  End With
  sh.Range("A1:D1").EntireColumn.AutoFit                   'kolombreedte aanpassen
End Sub
 
of
Code:
Sub M_snb()
    For j = 1 To UsedRange.Columns.Count \ 4
       UsedRange.Offset(2).Columns(4 * j + 1).Resize(, 4).Cut Columns(1).Cells(Rows.Count, 1).End(xlUp).Offset(1)
    Next
End Sub

PS. Ik word wel nieuwsgierig naar die SQL string.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan