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

XLS bestandnaam aanpassen voor opslaan naar CSV

Status
Niet open voor verdere reacties.
Plaats beide bestanden en vertel er bij welke als wat moet worden opgeslagen.
 
Je hebt nu een .xls en een .csv geplaatst.
Welk bestand moet als wat worden opgeslagen.

Het menu is nu de csv en het andere bestand volgens mij het menu.
 
Laatst bewerkt:
Edmoor,

Het menu is gewoon een simpel xls bestand waar ik dmv macro's bestanden openen om in te zien deze moet niet aangepast worden.
Het originele ACOB_asfalt_00_2022.xls, dat wordt een CSV bestand met een aangepaste weeknr naar keuze.

Jan
 
Je hebt als bestand een menu.csv geplaatst.
De code heb je nu in dat andere bestand zitten.
 
Edmoor,

Klopt dit is wat er nu gebeurt met de code.
Ik zal het originele menu.xls bestand sturen, en het originele ACOB_asfalt_00_2022.xls bestand.

Dan ga ik even liggen, over 5uur gaat de wekker weer.

Alvast bedankt.
 

Bijlagen

Het enige dat het menu bestand dus doet is het acob bestand openen, opslaan als .csv EN opslaan als .xls met een nieuw weeknummer.
Klopt dat?
Ik zie het morgen wel :)
 
Maak er eens dit van:
Code:
Sub MetaCom_Asfalt()
    Pad = "C:\Users\jan\Documents\ACOB weegdata\MetaCom weegdata\CSV bestanden"
    Workbooks.Open(pad & "\ACOB_asfalt_00_2022.xls").Sheets(1).Cells.Style = "Normal"

    Weeknr = Format(InputBox("Weeknummer: "), "0#")
    With ActiveWorkbook
        .SaveAs Pad & "\" & "ACOB_asfalt_" & Weeknr & "_2022.xls"
        .SaveAs Pad & "\" & Replace(.Name, ".xls", ".csv"), xlCSV, , , , , , , , , , True
        .Close False
    End With
End Sub
 
Laatst bewerkt:
Het xls bestand ook nog een keer opslaan is overbodig: het is identiek aan het csv-bestand.

Dit volstaat:

Code:
Sub M_snb()
  c00 = "C:\Users\jan\Documents\ACOB weegdata\MetaCom weegdata\CSV bestanden\ACOB_asfalt_00_2022"
    
  With GetObject(c00 & ".xls")
    .SaveAs Replace(c00, "_00_", "_" & [weeknum(today(),21)] & "_"), 23, , , , , , , , , True
    .Close 0
  End With
End Sub

PS. Ook met Excel kun je rechtstreeks gegevens uit een database halen; daar is geen tussenschakel voor nodig.
 
Laatst bewerkt:
Vandaar mijn vraag in #27.
 
Edmoor en SNB

De code van Edmoor werkt nu perfect maar maakt idd ook een xls bestand met die weeknummer en dat is niet nodig dus die optie kan eruit.

De code van SNB geeft een foutmelding zie onderstaande.
With GetObject(c00 & ".'xls")

Edmoor, het bestand menu.xls is een simpel menutje waar ik dmv macro's bestanden oproep meer niet.

SNB, De data die via crystal report uit de database haal worden nog op verschillende manieren bewerkt/aangepast/verzameld/gesorteerd en dit bevalt prima.
ik kan deze eind gegevens exporteren naar div formaten, helaas zit er geen optie in om het bestand steeds een andere naam te geven. Maar dat lossen we op deze wijze op.

Jan
 
Wat als je dat aanhalingsteken achter de punt eens weghaalt ?
 
ik kan deze eindgegevens exporteren naar div formaten
Dan zit daar vast ook een CSV-optie bij, zodat je uiteindelijk alleen de naam van het CSV-bestand hoeft te wijzigen..
Dan volstaat:
Code:
Sub M_snb()
  name "G:\OF\voorbeeld.csv" as G:\OF\voorbeeld" & [weeknum(today(),21)] & ".csv"
End Sub

helaas zit er geen optie in om het bestand steeds een andere naam te geven.
Omdat de naam die jij gebruikt geen standaardnaam is, geloof ik daar geen bal van.
 
Wat als je dat aanhalingsteken achter de punt eens weghaalt ?

SNB

Dak werkt het wel, alleen maakt hij automatisch zelf het weeknummer aan.
Dus vandaag is week 10, de gegevens uit het bestand behoren tot week 9.
De code van Edmoor bevat de optie om zelf de weeknummer in te voeren, dus dan gaat het altijd goed.

Crystal Report kan idd exporteren naar CSV ik ben daar mee aan het stoeien geweest met de optie's en steeds kwam niet het juiste eruit. zie bijlage de optie's.
Hoe dan ook met de code van Edmoor werkt het, en kan ik handmatig de juiste weeknummer toevoegen.
Als ik met de juiste instelling het bestand vanuit CR kan exporteren naar een CSV bestand moet ik alsnog de weeknummers aanpassen.
Als je een export maakt met CR moet je deze een bestandsnaam geven, als je dit elke keer handmatig doet kun je steeds zelf de naam aanpassen.
Nu worden de exports automatisch gegenereerd met een periode keuze, de bestandsnaam is dan steeds hetzelfde maar moet dus alleen aangepast worden ivm de weeknummers.
De bestandsnaam die ik gebruik ACOB_asfalt_00_2022.xls is een naam bedacht door onze administrateur. Dit bestand wordt door mij gemaild naar de administratie nadat ik deze heb omgezet naar een CSV bestand met de juiste weeknummer. Daar wordt het bestand ingelezen en verwerkt. De administrateur krijgt van div bedrijven dergelijke bestanden binnen met uiteraard andere bedrijfsnamen. Tja een hele gedoe, maar ik heb het niet verzonnen ik hoop dat je het nu helder is.

Als de xls versie uit de code kan van edmoor dan is het perfect.

Jan
 
Dus vandaag is week 10, de gegevens uit het bestand behoren tot week 9.

Sjonge, dat is toch totaal oninteressant. Dit doe je wekelijks, dus bestanden krijgen nooit dezelfde naam en daar ging het toch om. ?
Bij de verdere verwerking gaat het niet om de naam van het bestand maar om de gegevens erin en die zijn per regel (record) voorzien van een datumveld.

Mij is wel duidelijk hoe jullie werken, maar jij moet eerst nog proberen onze suggesties beter te begrijpen.
Ik vind het niet erg als je je ook een beetje verdiept in de code die ik in mijn voorlaatste bericht plaatste.
 
Laatst bewerkt:
Sjonge, dat is toch totaal oninteressant. Dit doe je wekelijks, dus bestanden krijgen nooit dezelfde naam en daar ging het toch om. ?

Bij de verdere verwerking gaat het niet om de naam van het bestand maar om de gegevens erin en die zijn per regel (record) voorzien van een datumveld.

Mij is wel duidelijk hoe jullie werken, maar jij moet eerst nog proberen onze suggesties beter te begrijpen.
Ik vind het niet erg als je je ook een beetje verdiept in de code die ik in mijn voorlaatste bericht plaatste.

Je hebt gelijk, het is soms wat omslachtig maar ik heb het ook niet verzonnen, jou optie is ook makkelijk door de laatste datum uit het bestand te halen en daar het weeknummer van af te leiden. Nu doe ik dit dan handmatig met de code van Edmoor, wat geen probleem is.
Wat betreft het verdiepen in de code ik wil dat graag maar het ontbreekt vaak aan tijd om dit geheel uit te zoeken en proberen. En voor sommige mensen zijn dergelijke code's een fluitje van een cent waar andere heel veel moeite voor moeten doen. Helaas kan niet iedereen zich een Excel/VBA code expert noemen. Jullie wel.
Bedankt voor de input en oplossingen. SNB
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan