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

Lijst opschoonen

Status
Niet open voor verdere reacties.

henrvanbeek

Gebruiker
Lid geworden
4 sep 2018
Berichten
15
Ik heb een lijst met apparatuur gekregen. Ik wil hiervan een nette lijst maken alleen de lijst is helemaal vertikaal uitelkaar getrokken. Deze lijst komt de uit ons onderhouds managment systeem.
Nu zou ik graag een en ander zo doen dat als ik een nieuwe inport doe ik de actie kan herhalen.

Wie zou me aan een idee kunnen helpen hoe ik dit aan moet pakken.
 

Bijlagen

Laat ook zien hoe het er dan wel uit moet zien.
Het lijkt erop dat je dat beter aan de leverende kant kan (laten) regelen.

Ennuh: Import
 
krijg je dit aangeleverd als .xlsx?
Zo neen, kun je een voorbeeld posten van een aangeleverd bestandje?

Kun je aangeven hoe het er uit moet komen te zien, bv in Blad2
 
Als je Excel365 gebruikt kan je met een aantal FILTER functies de witte regels er wel tussenuit krijgen. Zie vb.

Als er iets anders moet gebeuren graag een toelichting.
 

Bijlagen

Laatst bewerkt:
Ik zal zo even een voorbeeld genereren. Het kan uit het systeem komen al een tekstbestand of HTML. Alleen hier staat de bedrijfsnaam bij in. Dus ik ben er een beetje voorzichtig mee
 
Met de bedrijfsnaam ben je zelf al onvoorzichtig geweest dus niet handmatig knutselen met de bestanden maar deze gewoon plaatsen. (Kunnen altijd nog verwijderd worden)
 
Bedrijfsnaam is bekend, net als met de eigen naam, locatie, shift-nummer, functie. Altijd even de eigenschappen van een document opschonen.... voor de zekerheid.

Wat was er niet goed aan voorbeeld in #4?
 
hierbij de orginele bestanden en AlexCel zijn bestandje. ik wil alles onder elkaar laten komen. maar zie ook dat ik een deel van de structuur mis. dus dat moet ik dan ook weer uitvogelen. voor nu is het alles onder elkaar zetten.
 

Bijlagen

Laatst bewerkt:
Door dat dit in SAP een dergelijk beeld is

Capture.PNG

Komt het er in het bestand er ook zo uit te zien. Wat ik graag zou willen is alles bij elkaar in kolommen zodat ik een selectie kan maken en kan zoeken.
Doel is voor mijn eindonderzoek van mijn opleiding een beeld te scheppen. Ik wil graag op een aantal standaard onderdelen in de fabriek iets toepassen.
Maar kan helemaal niet inzichtelijk maken om hoeveel b.v. pompen of kleppen het gaat.
Als dit lukt zou dit bestand ook naar collega's kunnen. Namelijk in EXCEL zoeken gaat een stuk makelijker als in SAP.
 
Ik heb het bestand assetstructure.txt gebruikt:
Code:
Sub M_tst()
   With CreateObject("scripting.filesystemobject")
      .createtextfile("G:\OF\asset_001.csv").write Join(Filter(Split(Replace(Replace(Replace(Replace(Replace(.opentextfile("G:\OF\0_assetstructure.txt").readall, vbTab, ","), ",,", ","), ",,", ","), ",,", ","), vbCrLf & ",", vbCrLf), vbCrLf), ","), vbCrLf)
   End With
      
   Workbooks.Open "G:\OF\asset_001.csv"
End Sub
 
SNB

Geniaal ..excact wat ik wil.. alleen nu even de vraag kan je de code uitleggen? Zodat ik het zelf ook een beetje snap wat je er in doet?
 
1. Open het bestand .opentextfile("G:\OF\0_assetstructure.txt")
2. lees alla gegevens in het bestand .readall
3. vervang all tabs door komma's Replace(... , vbtab,",")
4. vervang alle dubbele komma's door enkele Replace(..., ",,", ",")
5. vervang alle overgebleven dubbele komma's door enkele Replace(..., ",,", ",")
6. vervang alle evergebleven dubbele komma's door enkele Replace(..., ",,", ",")
7. verwijder alle komma's aan het begin van een regel Replace(..., vbcrlf & ",", vbcrlf)
8. splits de inhoud van het bestand per regel split( ... , vbCrLf)
9. verwijder alle lege regels Filter( ... , ",")
10. voeg alle regels weer samen tot 1 tekenreeks join( ... , vbCrLf)
11. maak een nieuw bestand "G:\OF\asset_001.csv" .createtextfile("G:\OF\asset_001.csv")
12. schrijf het resultaat van stap 10 in dit nieuwe bestand .write

Waarschuwing: zonder grondige basiskennis van VBA gaat het je, ondanks deze uitleg, zelf niet lukken.

NB. Vertikaal is van boven naar beneden (vertigo is hoogtevrees in het Engels), horizontaal is van links naar rechts (zoals de horizon).


Als je het (veel langzamer) in het Excelbestand wil doen:

Code:
Sub M_snb()
   Application.ScreenUpdating = False
   For Each it In UsedRange.Rows
     it.SpecialCells(4).Delete -4159
   Next

   UsedRange.Columns(1).SpecialCells(4).Delete -4162
End Sub
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan