Help!

PC-Problemen?
De vrijwilligers van Oplossing.be zoeken gratis met u mee!

Hulp bij posten

Recente topics

Auteur Topic: berekenen van een ogm digit.  (gelezen 45402 keer)

0 leden en 1 gast bekijken dit topic.

Offline kobe

  • Lid
  • *
  • Berichten: 30
  • Oplossing.be
berekenen van een ogm digit.
« Gepost op: 13 mei 2009, 10:31:29 »
Je kent het wel als je een factuur krijgt dan krijg je een mededeling met de structuur ***111/1111/111dd***.

Weet iemand hoe je die twee laatste controle getallen berekent in excell.

Infeite is het delen door 97, maar dan kom ik er niet.

Weet iemand raad?
0A00h Hewlett-Packard, FireGL V3100 (0x5B64)FireGL V3100 (0x5B64), Windows XP, Prof, SP2, NL, Intel(R) Pentium(R) D CPU 3.20GHz, 1024 MB RAM, HDD:156 GB, NTFS, Norton AntiVirus, Internet Explorer 6.0, Microsoft Outlook

Offline firmin

  • Ervaren lid
  • ***
  • Berichten: 442
  • Geslacht: Man
  • Excel Specialist
Re: berekenen van een ogm digit.
« Reactie #1 Gepost op: 13 mei 2009, 12:26:06 »
Kobe,
Het is de rest van de deling door 97.
De formule hiervoor is '=MOD(range;97)'
Maar .....in het getal mogen geen tekens staan.
Dus 111/1111/1111** kan niet. wel 11111111111
Firmin
PB easynote LE69KB,AMD quad-core,1000GB HDD,AMD Radeon HD8330,8GB DDR3
Windows 10,office 2007
MSE, Internet Explorer 11

Offline kobe

  • Lid
  • *
  • Berichten: 30
  • Oplossing.be
Re: berekenen van een ogm digit.
« Reactie #2 Gepost op: 13 mei 2009, 13:06:03 »
Bedankt firmin.

Ik heb nu mijn rest getal en daar kan ik via opmaak er voorzorgen dat er steeds 2 cijfers zijn (03 ipv 3) wanneer de rest minder is dan 10.

Maar als ik tekst.samenvoegen kies wordt die 03 aan de factuur gehangen als een 3 ipv een 03.

weet je daar raad mee
0A00h Hewlett-Packard, FireGL V3100 (0x5B64)FireGL V3100 (0x5B64), Windows XP, Prof, SP2, NL, Intel(R) Pentium(R) D CPU 3.20GHz, 1024 MB RAM, HDD:156 GB, NTFS, Norton AntiVirus, Internet Explorer 6.0, Microsoft Outlook

Offline RedHead

  • Excel-Expert
  • Ambassadeur
  • *****
  • Berichten: 2.279
  • Geslacht: Man
  • Met Excel lukt 't wel.... (toch???)
Re: berekenen van een ogm digit.
« Reactie #3 Gepost op: 13 mei 2009, 16:27:59 »
kobe, Dat kan je doen door het resultaat direct in een format te gieten...
=Text(MOD(range;97);"00")
De hele OGM berekening met de juiste output kan je trouwens heel mooi in een UDF maken. Geef maar een gil als je daar iets mee wilt.

Groet, Leo

[EDIT] Hierbij nog een linkje met uitleg over de OGM voor de lezers die net als ik niet weten waar die afkorting voor staat...
______________________________

Groet, Leo

Offline Diezel

  • Oplosser
  • ****
  • Berichten: 508
  • Geslacht: Man
  • Meedenker - Initiatief nemen - Helpen oplossen...
Re: berekenen van een ogm digit.
« Reactie #4 Gepost op: 13 mei 2009, 20:42:54 »
Hier een voorbeeld van een UDF, de basis voor een OGM controle

In bijlage een voorbeeld

Option Explicit

Public Function OgmDigit(x As Range) As String

Dim dbldeelL As Double
Dim dbldeelR As Double
Dim dbldeelMOD As Double

dbldeelL = Val(Left(x, 10))
dbldeelR = Val(Right(x, 2))
dbldeelMOD = dbldeelL - (Int(dbldeelL / 97) * 97)
OgmDigit = dbldeelMOD
OgmDigit = Format(OgmDigit, "00")

If dbldeelMOD = 0 Then
dbldeelMOD = 97
OgmDigit = dbldeelMOD
OgmDigit = Format(OgmDigit, "00")
End If

If dbldeelMOD <> dbldeelR Then
OgmDigit = 0
OgmDigit = Format(OgmDigit, "0")
End If

End Function

Hoe zou ik bijv. automatisch in een lus een OGM nummer kunnen genereren als ik op een knop klik?

Mvg,

Diezel
OS: Windows 10 Home - 64 bit
Processor:  Intel(R) Core(TM) I7 - 4770 CPU 3,40 GHZ
SSD - RAM: 500 GB, 16 GB
SOFTWAREPAKKET: Office 2007

Offline RedHead

  • Excel-Expert
  • Ambassadeur
  • *****
  • Berichten: 2.279
  • Geslacht: Man
  • Met Excel lukt 't wel.... (toch???)
Re: berekenen van een ogm digit.
« Reactie #5 Gepost op: 13 mei 2009, 23:47:12 »
Tja, als Diezel al met code komt, kan ik natuurlijk niet achterblijven... ;D
Function OGM(dGetal As Double) As String
'voorbeeld OGM-nummer: +++785/4279/40359+++
Const iDELER As Integer = 97
Dim sCheckDigit As String, sTempOGM As String

    If Len(CStr(dGetal)) <> 10 Then OGM = "#ERR!": Exit Function
    sCheckDigit = Format(dGetal - (iDELER * Int(dGetal / iDELER)), "00") 'de MOD functie breekt af bij een Long Integer (=2147483648) = Bug van VBA!!!!
    sTempOGM = dGetal & sCheckDigit
    OGM = "+++" & Mid(sTempOGM, 1, 3) & "/" & Mid(sTempOGM, 4, 4) & "/" & Mid(sTempOGM, 8, 5) & "+++"

End Function

Groet, Leo
______________________________

Groet, Leo

Offline Diezel

  • Oplosser
  • ****
  • Berichten: 508
  • Geslacht: Man
  • Meedenker - Initiatief nemen - Helpen oplossen...
Re: berekenen van een ogm digit.
« Reactie #6 Gepost op: 14 mei 2009, 00:18:09 »
Redhead,

Ik heb weer wat bijgeleerd over OGM, en kan het zeker gebruiken in een andere toepassing zoals gegevensbeheer. Jou aangedragen codevoorbeeld is dan ook de kers op de taart.

Het is mij dan ook opgevallen dat bij elke stapgrootte van 101 op een juist OGM nummer, weer een juist OGM nummer uit de bus komt.

Mvg,

Diezel
OS: Windows 10 Home - 64 bit
Processor:  Intel(R) Core(TM) I7 - 4770 CPU 3,40 GHZ
SSD - RAM: 500 GB, 16 GB
SOFTWAREPAKKET: Office 2007

Offline kobe

  • Lid
  • *
  • Berichten: 30
  • Oplossing.be
Re: berekenen van een ogm digit.
« Reactie #7 Gepost op: 14 mei 2009, 11:30:03 »
 :( ??? :-\
Beste diezel en readhead mooie kode maar ik weet niet hoe ik die nu in een excell kan krijgen.
Ik ben nu eenmaal een leek en geen specialist.

Moet ik die ergens incopiëren of een macro knop maken voor een kolom waar ik de ogm in wil.

Alvast bedankt voor de hulp maar kan je me nog iets verder helpen?
0A00h Hewlett-Packard, FireGL V3100 (0x5B64)FireGL V3100 (0x5B64), Windows XP, Prof, SP2, NL, Intel(R) Pentium(R) D CPU 3.20GHz, 1024 MB RAM, HDD:156 GB, NTFS, Norton AntiVirus, Internet Explorer 6.0, Microsoft Outlook

Offline Diezel

  • Oplosser
  • ****
  • Berichten: 508
  • Geslacht: Man
  • Meedenker - Initiatief nemen - Helpen oplossen...
Re: berekenen van een ogm digit.
« Reactie #8 Gepost op: 14 mei 2009, 12:21:37 »
Kobe,

In bijlage een voorbeeld met een verwijzing naar de code van readhead.

Als je alt + f11 indrukt kom je in de vba editor waar je de module met de code ziet staan.

Uitleg:

In cel A2 staat het OGM nummer dat 10 karakters lang is. In cel B2 doet de functie zijn werk.
Je verwijst naar de functie door in cel B2 het volgende te typen: =OGM(A2)

Mvg,

Diezel
OS: Windows 10 Home - 64 bit
Processor:  Intel(R) Core(TM) I7 - 4770 CPU 3,40 GHZ
SSD - RAM: 500 GB, 16 GB
SOFTWAREPAKKET: Office 2007

Offline kobe

  • Lid
  • *
  • Berichten: 30
  • Oplossing.be
Re: berekenen van een ogm digit.
« Reactie #9 Gepost op: 14 mei 2009, 14:02:15 »
ALLEMAAL VRIENDELIJK BEDANKT
0A00h Hewlett-Packard, FireGL V3100 (0x5B64)FireGL V3100 (0x5B64), Windows XP, Prof, SP2, NL, Intel(R) Pentium(R) D CPU 3.20GHz, 1024 MB RAM, HDD:156 GB, NTFS, Norton AntiVirus, Internet Explorer 6.0, Microsoft Outlook

Offline G69RT

  • Nieuw lid
  • Berichten: 2
  • Oplossing.be
Re: berekenen van een ogm digit.
« Reactie #10 Gepost op: 10 december 2012, 00:11:05 »
Hallo allemaal,

Kan iemand dit Excel bestandje terug posten, de bijlage OGM.zip geeft een CRC error met WinRar:

!   C:\Users\*****\Documents\OGM.zip: Het archief is onherstelbaar
!   C:\Users\*****\Documents\OGM.zip: Het archief is onherstelbaar
!   C:\Users\*****\Documents\OGM.zip: CRC niet correct. Het bestand OGM.xls is beschadigd

Alvast bedank !!!!

Offline RedHead

  • Excel-Expert
  • Ambassadeur
  • *****
  • Berichten: 2.279
  • Geslacht: Man
  • Met Excel lukt 't wel.... (toch???)
Re: berekenen van een ogm digit.
« Reactie #11 Gepost op: 10 december 2012, 21:26:31 »
G69RT, Welkom op dit forum.

Je hebt het bestandje toch helemaal niet nodig? Kopieer gewoon de code van mij (of Diezel) en plak die in een standaard module van de VB-Editor. Daarna kan je de functie zo gebruiken in je worksheets van het workbook waar je die code hebt geplakt.

Groet, Leo
______________________________

Groet, Leo

Offline G69RT

  • Nieuw lid
  • Berichten: 2
  • Oplossing.be
Re: berekenen van een ogm digit.
« Reactie #12 Gepost op: 10 december 2012, 23:28:36 »
Hoi RedHead,

Ik ken jammer genoeg niets van VB-Editor, is dat Visual Basic?
Kan men dit in Excel importeren?

Ik heb het anders opgelost.

(10 cijfers) / 97
Deze uitkomst naar beneden afronden
(10 cijfers)-(uitkomst*97)

Voorbeeld:
(0123456789 / 97) = 1272750,40 en dan
(0123456789 - (1272750 * 97)) = 39

En zo werkt het ook  ;D

Ik heb dit nodig om een Gestructureerde Mededeling te genereren.

Toch bedankt voor de hulp!!!!

Offline PaulEveraert

  • Nieuw lid
  • Berichten: 1
  • Geslacht: Man
  • Oplossing.be
Re: berekenen van een ogm digit.
« Reactie #13 Gepost op: 06 september 2013, 17:52:53 »
Beste'n,

Ik zoek naar een manier om een OGM mededeling in een .rtf document toe te voegen.
Mijn factuurnummers zijn reeds 10 cijferig dus dit is meegenomen.
vb/ 2013010426

Kan iemand mij hierin helpen?

Alvast bedankt :-)

Offline Arlyee

  • Nieuw lid
  • Berichten: 3
  • Geslacht: Vrouw
  • Oplossing.be
Re: berekenen van een ogm digit.
« Reactie #14 Gepost op: 17 mei 2016, 10:24:59 »
Hallo!

Ik vind jullie code echt super!! En die werkte geweldig in mijne vorige excel (2007). Ik heb nu een update gekregen (op het werk) naar 2010 en mijn codes zijn weg  >:(.
Als ik ze opnieuw wil invoeren krijg ik foutmeldingen en werken mijn functies om de mededeling te genereren niet.
Kunnen jullie me verder helpen? (wil niet een stap terug moeten zetten door terug een oude  manier te gaan gebruiken)

Dank jullie!!!!

 


www.combell.com