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

Negatieve getallen invoeren zonder -teken

Status
Niet open voor verdere reacties.

showa

Gebruiker
Lid geworden
27 apr 2005
Berichten
127
Is het mogelijk om in bv de cellen A1 tm A15 bedragen in te voeren welke allemaal positief zijn.
Dit zelfde ook op de rijen B, C, D en E
Vervolgens moeten op de rijen F, G, H, I, en J negatieve bedragen worden ingevoerd.
Ik zou graag willen dat het -teken automatisch wordt geplaatst.
In de rij K1 tm K15 moet het totaal bedrag komen van 1 tm 15
Het zou helemaal mooi zijn wanneer negatieve bedragen in het rood worden afgedrukt.
 
Voor het afdrukken in rood ben je afhankelijk van een kleurenprinter. Verder haal je volgens mij nogal wat door elkaar. Als ik er al iets van begrijp kan het alleen via VBA en dan is het beter om een representatief bestand te plaatsen.
 
Bijgaand een voorbeeld.
De getallen op regel 5 - 6 en 7 kolom B tm G zou ik willen invoeren op een manier dat de - altijd word geplaatst zonder dat ik deze bij elke cel moet invoeren.
Deze waarde is altijd negatief.
De werkelijke lijst is alleen vele malen groter.
 

Bijlagen

  • voorbeeld negatieve invoer.xlsx
    10,3 KB · Weergaven: 56
Dat kan bijvoorbeeld met deze achter het werkblad:
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Intersect(Target, Range("B5:G7")) Then
        Application.EnableEvents = False
        If Target > 0 Then Target.Value = Target.Value * -1
        Application.EnableEvents = True
    End If
End Sub
 
Dit lijkt er erg veel op, maar er zit volgens mij nog een foutje in.
Wanneer ik in een andere cel dan B5:G7 een waarde invoer krijg ik een foutmelding.

Fout 91 tijdens uitvoering
Objectvariabele of blokvariabele With is niet ingesteld.
 
Code:
If [COLOR=#ff0000]not[/COLOR] Intersect(Target, Range("B5:G7")) [COLOR=#ff0000]is nothing [/COLOR]Then
 
Nog iets minder foutmeldinggevoelig
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("B5:G7")) Is Nothing And Target.Count = 1 Then
  Application.EnableEvents = False
  Target = -Abs(Target)
  Application.EnableEvents = True
End If
End Sub
 
Laatst bewerkt:
Geweldig,
Ik heb nu precies waar ik naar zocht.

Hartelijk dank voor de goede en snelle reacties
 
Waarom niet simpelweg het celformat op 0- zetten voor de uitgave regels? Dan ben je er toch ook? Bij een optelling per kolom zou je dan in je som functie die uitgave regels als negatief kunnen optellen... VBA lijk mij vrij zwaar voor deze vraag.
 
Helemaal eens met @Ginger,

om het compleet te maken bij de cel eigenschappen : [Rood]0-

Hoewel en dat zal wel met beroepsdeformatie te maken hebben.... uitgaven zijn per definitie al negatief
 
@E v R

Maar dat moet je Excel dan nog wel even vertellen.... ;)
 
Opnieuw aangepast volgens de laatste tips.
Zoals zo vaak is een moeilijk probleem eigenlijk heel simpel op te lossen.
Je moet het alleen even weten.>))
 
Geeft wel een beetje raar beeld als het bedrag toch als negatief ingevuld wordt. -50-:eek:
 
Klopt, maar de wens was juist om dit niet te hoeven doen, dus voor mij een prima oplossing.
Voor mensen welke soms wel en soms niet negatief willen invoeren is het misschien verstandiger om een vaste regelmaat in hum werk aan te brengen.
 
Geeft wel een beetje raar beeld als het bedrag toch als negatief ingevuld wordt. -50-:eek:

Kan opgelost worden door voor dit format te kiezen... [Red]-0;-0
Zo wordt er ten alle tijden een negatief getal GETOOND, maar als je de waarde ook als negatief invoert, zal deze zwart blijven ten teken dat je het fout doet...
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan