Acties:
  • 0 Henk 'm!

  • Han
  • Registratie: Juli 2001
  • Niet online
Goedendag,

Ik heb een probleem met Excel waar ik niet uit kom...

Ik heb uit twee afzonderlijke cellen waarden samengevoegd naar één nieuwe cel. Het betreft een getalwaarde en een tekstwaarde (kolom G en H). De samengevoegde waarde geeft een tijdnotatie in Engelse waarde, AM/PM.

Nu wil ik deze nieuwe gegenereerde waarden anders weergeven zodat ik deze op een later tijdstip kan omzetten naar een tijdsnotitie in Nederlandse waarden (uu:mm /24h). Deze tussentijdse waarde wil ik als volgt; uu:mm AM/PM. Deze tijdsnotatie genereer ik door een aangepaste tijdnotatie te maken ([$-409]uu:mm AM/PM;@) Echter wanneer ik de nieuwe kolom (kolom I) omzet naar die nieuwe tijdsnotatie gebeurt er niks, de weergave blijft het zelfde als daarvoor.

Maar nu het gekke; wanneer ik dubbelklik op een cel uit kolom I en vervolgens de cel weer verlaat zonder een handeling te doen, springt de cel wel in de gewenste tijdsnotatie. Hoe kan dit?

De database waarin ik werk bestaan uit 15.000+ rijen, dus handmatig op elke cel dubbelklikken is geen optie. Weet iemand hoe ik een dergelijke handeling op alle cellen in kolom I kan produceren? Of een trucje waardoor de tijdsnotatie direct als gewenst verschijnt?

In het plaatje hieronder zie je een gedeelte waar het om gaat. rijen 2 t/m 6 uit kolom I zijn zoals ze regulier worden weergegeven, rijen 7 t/m 10 heb ik dubbelgeklikt en zijn dus veranderd in de notatie zoals gewenst:

Afbeeldingslocatie: https://tweakers.net/ext/f/15b2mHmF9sYPsoZQZGyf5PLe/full.png

Doubt thou the stars are fire; Doubt that the sun doth move; Doubt truth to be a liar; But never doubt I love.


Acties:
  • 0 Henk 'm!

  • Han
  • Registratie: Juli 2001
  • Niet online
Opgelost met een macro:
code:
1
2
3
4
5
6
7
8
9
10
Sub Macro1()
Opnieuw:
    rij = ActiveCell.Row
    Kolom = ActiveCell.Column
    a = Cells(rij, Kolom - 3)
    b = Cells(rij, Kolom - 2)
    ActiveCell = a & " " & b
    ActiveCell.Offset(1, 0).Range("A1").Select
    If ActiveCell <> "" Then GoTo Opnieuw
End Sub

Doubt thou the stars are fire; Doubt that the sun doth move; Doubt truth to be a liar; But never doubt I love.


Acties:
  • 0 Henk 'm!

  • F_J_K
  • Registratie: Juni 2001
  • Niet online

F_J_K

Moderator CSA/PB

Front verplichte underscores

FWIW: iets als zoek " " vervang door " " had misschien ook gewerkt.

'Multiple exclamation marks,' he went on, shaking his head, 'are a sure sign of a diseased mind' (Terry Pratchett, Eric)


Acties:
  • 0 Henk 'm!

  • Lustucru
  • Registratie: Januari 2004
  • Niet online

Lustucru

26 03 2016

Nog meer FWIW: het is imho een beetje tricky om dit soort manipulaties te doen via weergaveopties. De vraag is dan hoe je die cellen hebt samengevoegd. Mijn voorkeur zou het hebben om direct in kolom I de tijd als numerieke waarde te schrijven door iets als '=G2/24+(H2="PM")/2'.

In de cel komt dan direct de juiste waarde en hoe je die weergeeft is idd een kwestie van celeigenschappen.

De oever waar we niet zijn noemen wij de overkant / Die wordt dan deze kant zodra we daar zijn aangeland


  • Han
  • Registratie: Juli 2001
  • Niet online
Ok, thanx beiden d:)b :)

Doubt thou the stars are fire; Doubt that the sun doth move; Doubt truth to be a liar; But never doubt I love.