Op deze website gebruiken we cookies om content en advertenties te personaliseren, om functies voor social media te bieden en om ons websiteverkeer te analyseren. Ook delen we informatie over uw gebruik van onze site met onze partners voor social media, adverteren en analyse. Deze partners kunnen deze gegevens combineren met andere informatie die u aan ze heeft verstrekt of die ze hebben verzameld op basis van uw gebruik van hun services. Meer informatie.

Akkoord

Vraag & Antwoord

Programmeren

ASCII Enter verwijderen uit tekst en vervangen door spatie

Floor
5 antwoorden
  • Ik heb excel en access files waar via [ctrl]&[enter] de regels worden afgebroken en naar een nieuwe regel springt (in de zelfde cel
    ij).
    Nu wil ik alles op 1 lijn krijgen, de ASCII enters verwijderen en deze vervangen door ASCII code spatie.

    Weet iemand of dit mogelijk is, ik heb op internet gezocht maar niet gevonden. Ik namelijk geen idee hoe ik ASCII codes kan bewerken in een Access of Excel file. een simpele find
    eplace werkt niet.
  • Dat is zeer eenvoudig.
    Je bent op de goede weg.

    Schrijf een programma in BASIC (ik gebruik Liberty BASIC)
    Het is zo gepiept.

    Open het bestand in records of binair.
    Lees elk teken stuk voor stuk in.
    Indien je de gewraakte combinatie tegenkomt verander je het in een spatie
    Zet de spatie in het oude bestand op de oude plek terug.

    Lijkt dit een uitdaging?
    Bezoek dan het Liberty BASIC forum.

    Abcott
  • Waarom een apart programma programmeren als het ook in VBA kan?

    Het teken wat je zoekt is het ASCII teken 10. Met de volgende voorbeeldmacro ga je op zoek in een cel naar deze waarde. Alle tekens die niet de ASCII-waarde 10 hebben, worden in een tijdelijke variabele geplaatst, en aan het eind van de routine geef je de cel de waarde van de tijdelijke variabele.
    [code:1:26a791c99f]
    Sub ToonAscii()

    Dim char As String
    Dim result As String
    Dim i As Integer

    Range("A1").Select

    For i = 1 To Len(ActiveCell.Value)
    char = Mid$(ActiveCell.Value, i, 1)
    If Asc(char) <> 10 Then result = result & char
    Next

    ActiveCell.Value = result

    End Sub
    [/code:1:26a791c99f]
  • Hallo Floor,

    Kun je ons een stukje van je files laten zien?
    [code:1:f1814d32b7]open "test.dat" for random as #rec len = 1
    field #rec, 1 as a$

    for t = 1 to lof(#rec)
    get #rec, t
    print a$,asc(a$) 'hier kun je doen wat je wilt met je bestand
    next t

    close #rec
    end

    [/code:1:f1814d32b7]

    Abcott
  • In LibertyBASIC kun je een heel bestand in een string plaatsen.
    Daarna kun je INSTR erop loslaten en een nieuwe string maken.
    Deze nieuwe string kun je eenvoudig korter maken.

    Een string in een bestand overzetten is natuurlijk weer een
    fluitje van een cent.

    Overigens vind ik het "verdacht" als bestanden van inhoud gewijzigd worden zonder dat de gebruiker daar uitdrukkelijk toestemming voor geeft.

    Abcott

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.