Deel van een cel kopieren

Bespreek het rekenblad
tazthecat
Berichten: 6
Lid geworden op: di jun 28, 2022 11:28 am

Deel van een cel kopieren

Bericht door tazthecat »

Hallo,

Libreoffice 7.4

ik heb een lijst met klantnummers en ik wil een deel van dit nummer in een andere cel plaatsen.

Formaat a_123456_789_1445

Nu kan ik met DEEL gemakkelijk het gedeelte na "a_" kopieren met =DEEL(A1;3;6). Maar, dit nummer is niet altijd even lang.

dus krijg ik soms krijg ik het volgende resultaat 1234_6.

Is er een manier om te zeggen alles tussen _ en _ ? Deze underscores zijn altijd hetzelfde, het klantnummer is niet altijd even lang.

bedankt.
OpenOffice 4.1.12 Windows 10 Pro
RPG
Berichten: 4676
Lid geworden op: wo apr 15, 2009 1:01 am
Locatie: Apeldoorn, Nederland

Re: Deel van een cel kopieren

Bericht door RPG »

In het principe zijn er twee manieren om dit probleem op te lossen
a) gebruik de gewone inbouwde functies.
b) maak gebruik van reguliere expressie.

Reguliere expressie's zijn erg krachtig maar een getoonde oplossing is vaak onbegrijpelijk zonder een goede verklaring. Naar mijn idee is het werken met gewone functie's op deze plaats een goede keuze.

De al gebruikte functie deel(Celadres , plaats , aantal) is naar mijn idee al een mooi begin. Het moet nog wel wat uitgebreide worden met een enkele andere functies. De functie vind.alles(Gezocht teken, Celadres , plaats) is nodig om de under-score te vinden.

Er doen zich twee vragen voor
a) Vanaf welke plaats moet ik het aantal cijfers hebben: VIND.ALLES("_";A3)+1
b) Hoeveel cijfers moet ik hebben? : LENGTE(A3) - VIND.ALLES("_";A3;3)

dit maakt de volgende formule :

Code: Selecteer alles

=DEEL(A3;VIND.ALLES("_";A3)+1;LENGTE(A3) - VIND.ALLES("_";A3;3))
LibreOffice 7.4.3.2 op openSUSE Leap 15.4
tazthecat
Berichten: 6
Lid geworden op: di jun 28, 2022 11:28 am

Re: Deel van een cel kopieren

Bericht door tazthecat »

Hallo,

Bedankt voor je snelle antwoord.

Helaas werkt het niet zoals verwacht. Ik vermoed doordat er 3 "_" in staan.

Als ik I_1234567890_87654321_123456 gebruik met je formule krijg ik 1234567890_8765 als resultaat.

Natuurlijk heb ik geprobeerd om

Code: Selecteer alles

=DEEL(A3;VIND.ALLES("_";A3)+1;LENGTE(A3) - VIND.ALLES("_";A3;3))
te veranderen naar

Code: Selecteer alles

=DEEL(A3;VIND.ALLES("_";A3)+1;LENGTE(A3) - VIND.ALLES("_";A3;8))
Maar ik begrijp niet goed waarom dit dan niet werkt.

Bedankt voor je uitgebreide antwoord.
OpenOffice 4.1.12 Windows 10 Pro
RPG
Berichten: 4676
Lid geworden op: wo apr 15, 2009 1:01 am
Locatie: Apeldoorn, Nederland

Re: Deel van een cel kopieren

Bericht door RPG »

Wat ik in de eerste plaats duidelijk heb willen maken is dat je gewoon gebruik moet maken van beschikbare functies of andere mogelijkheden die er zijn. In dit zijn er een aantal string functie die helpen een string op te knippen in het gewenste deel. De beschikbaar functie. Eerst de Nederlandse naam en daarna de Engelse naam
  • Deel midstr
  • links left
  • rechts right
Het vinden van de oplossing is vaak voor niemand gemakkelijk. Een beproefde methode is begin in apart losstaand document met tekst die ontleed moet worden. Plaats in een cel een eenvoudige functie die de gewenste uitkomst geeft. Probeer daarna met hulpfuncties in andere cellen aan die getallen te komen.
Wanneer er voor een enkele tekst een goede uitkomst is dan kijken of de gevonden functies ook passen op andere teksten die er iets anders uit zien.

hulpcellen
Bij deze testen zou ik gebruik maken van hulpcellen. Hulpcellen maken dat je overzicht houd en dat de gebruikte formules ook te overzien zijn.

Werkwijze
Voor het bepalen van een goede werkwijze kun je uitgaan van de functie "deel" maar soms kan het achter elkaar gebruik maken van andere functie heel goed zijn:
Je knipt er eerst het linker overbodige deel er af.
Het volgende linker deel kan dan misschien wel goed zijn.

In de test die ik gedaan heb werkt wat ik voor ogen had maar het gehele doel is niet duidelijk voor mij.

Zo'n zoek proces kan best enige tijd duren maar dat is het leerproces wat je nodig hebt om om te gaan met werkbladen.

In tussen heb ik ook nog een andere formule gevonden

Code: Selecteer alles

=DEEL(A4; VIND.ALLES("_";A4;1)+1; VIND.ALLES("_" ; DEEL(A4;  VIND.ALLES("_";A4;1)+1  ;LENGTE(A4)  )  )-1 )
Bijlagen
voorbeeldkopieren.ods
Met reken en test voorbeelden
(9.88 KiB) 68 keer gedownload
LibreOffice 7.4.3.2 op openSUSE Leap 15.4
tazthecat
Berichten: 6
Lid geworden op: di jun 28, 2022 11:28 am

[Opgelost]Re: Deel van een cel kopieren

Bericht door tazthecat »

Super!

deze formule doet precies wat ik wil. Bedankt dat je een NOOB als mij hebt kunnen helpen.

Ik werk met mijn handen.. Maar ik moet nu eenmaal deze administratie ook doen. je hebt me nu heel erg geholpen.

Nu hoef ik maandelijks niet meer 200 van deze nummers zelf te selecteren, kopieren en plakken. :D
OpenOffice 4.1.12 Windows 10 Pro
RPG
Berichten: 4676
Lid geworden op: wo apr 15, 2009 1:01 am
Locatie: Apeldoorn, Nederland

Re: Deel van een cel kopieren

Bericht door RPG »

Kun je beter beschrijven hoe je het binnen krijgt en wat je er mee moet doen?
LibreOffice 7.4.3.2 op openSUSE Leap 15.4
tazthecat
Berichten: 6
Lid geworden op: di jun 28, 2022 11:28 am

Re: Deel van een cel kopieren

Bericht door tazthecat »

Ik krijg dagelijks een lijst met deze cijfering binnen (I_klantnummer_case nummer_opvolgingsnummer) dit bepaal ik niet zelf. Dit zijn klanten waar ik het internet ga herstellen of installeren.

Deze lijst moet ik na een maand vergelijken met mijn eigen administratie om te zien of ik er geen heb overgeslagen. Maar ik zelf heb enkel het klantnummer.

Dus nu kan ik automatisch het klantnummer uit de string halen, en met voorwaardelijke opmaak dit groen maken als ik deze ook heb in mijn lijst.

nu werk ik nog met 3 verschillende lijsten. 1 van mijzelf waar ik dagelijks bijhoud welke klanten ik bezocht heb. en ik krijg 2 verschillende lijsten van klanten die ik bezocht zou moeten hebben. dit kunnen wel 150-200 zijn per maand.

In het verleden heb ik bepaalde taken niet kunnen factureren omdat ik niet gezien had dat de lijst niet alles bevatte.

Nu deed ik dit handmatig omdat ik geen ervaring heb met Calc. Het feit dat de helft van de online hulp Engelse termen gebruikt, en mijn Nederlands is maakt het ook lastig.
OpenOffice 4.1.12 Windows 10 Pro
RPG
Berichten: 4676
Lid geworden op: wo apr 15, 2009 1:01 am
Locatie: Apeldoorn, Nederland

Re: Deel van een cel kopieren

Bericht door RPG »

Ik had eerst wat anders op geschreven maar dat is niet zo aan de orde. Probeer toch ook ook uit te zoeken hoe de computer voor je kan werken. Bij voorbeeld met
menu --> gegevens --> Tekst naar kolommen.

Als scheidingsteken kun je een underscore gebruiken. Ook is op de onderste deel aan te merken dat de kolommen tekst moeten worden en geen getallen.
En misschien moet je in de echte wereld iemand zoeken die zoiets eenvoudigs kan. Ik kan dat niet. Zo'n iemand moet wel ervaring hebben met ApacheOffice of LibreOffice. Als het alleen Excel is dat kan het wel een goede programmeur zijn maar kent hij niet dit programma.
LibreOffice 7.4.3.2 op openSUSE Leap 15.4
eremmel
Berichten: 670
Lid geworden op: di sep 01, 2009 10:11 am
Locatie: Barneveld, Nederland

Re: Deel van een cel kopieren

Bericht door eremmel »

tazthecat schreef: wo mar 01, 2023 10:29 pm Ik krijg dagelijks een lijst met deze cijfering binnen (I_klantnummer_case nummer_opvolgingsnummer) dit bepaal ik niet zelf. Dit zijn klanten waar ik het internet ga herstellen of installeren.

Deze lijst moet ik na een maand vergelijken met mijn eigen administratie om te zien of ik er geen heb overgeslagen. Maar ik zelf heb enkel het klantnummer.

Dus nu kan ik automatisch het klantnummer uit de string halen, en met voorwaardelijke opmaak dit groen maken als ik deze ook heb in mijn lijst.
@tazthecat, mooi begin om op een stukje handmatig en foutgevoelig werk grip te krijgen. Als het je nu per maand maar 30 min kost om alles te controleren, is dit een acceptabele oplossing.
Echter 1 vraag (even met je meedenken):
Ik maak op uit je beschrijving van de 'werklijst' die je binnen krijgt, dat het mogelijk is dat je vaker bij 1 klant in de maand langs zou moeten gaan, voor verschillende zaken (verschillende case-nummers). Dit zou dan verschillende facturen beteken (of meerdere regels op 1 factuur). Is de gekozen benadering voldoende om dit ook te ontdekken?
W11 21H2 (build 22000), LO 7.4.1.2(x64)
Het is Microsoft marketing die laat geloven dat computers geschikt zijn voor niet technici
RPG
Berichten: 4676
Lid geworden op: wo apr 15, 2009 1:01 am
Locatie: Apeldoorn, Nederland

Re: Deel van een cel kopieren

Bericht door RPG »

tazthecat schreef: wo mar 01, 2023 10:29 pm nu werk ik nog met 3 verschillende lijsten. 1 van mijzelf waar ik dagelijks bijhoud welke klanten ik bezocht heb. en ik krijg 2 verschillende lijsten van klanten die ik bezocht zou moeten hebben. dit kunnen wel 150-200 zijn per maand.
Ik denk dat het binnen krijgen van de lijsten met klanten misschien wel het belangrijkste is voor een goede opzet. Op dit moment is niet te zeggen wat de beste methode is om dat te doen. Deze lijsten zijn soms eenvoudig uit te breiden met enkele kolommen in dit geval bijvoorbeeld een datum wanneer je het werk daar gedaan hebt.

Wanneer je er een databasebereik van maakt laat het zich ook eenvoudig sorteren en filteren.
menu --> Gegevens -->Bereik definiëren
LibreOffice 7.4.3.2 op openSUSE Leap 15.4
Plaats reactie