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

Aanpassing VBA

Status
Niet open voor verdere reacties.

arvie76

Gebruiker
Lid geworden
14 sep 2016
Berichten
84
Goedemorgen,

Ik heb volgende VBA gemaakt m.b.v. forum dacht ik. Maar kon bericht waarin deze stond niet 123 terug vinden.

Nu wil ik deze wat mooier maken doormiddel van inputbox. Ik heb hem nu werkt voor een locatie maar krijg het niet voor elkaar om het voor de drie andere ook te laten doorvoeren.

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)

[GesRij] = Target.Row
[GesKol] = Target.Column
 
Application.EnableEvents = False
    For i = 1 To Range("Penpost").Areas.Count
        If Range("L6").Value <> "" Then
            If Range("Penpost").Areas(i).Value = "" Then
                Range("Penpost").Areas(i).Select
                A = InputBox("Hoeveel uren wil Amsterdam van de " & Sheets("data").Range("M2").Value & " uren.", "Verdeling penposturen", Sheets("data").Range("M2"))
                Range("T6").Value = A
                Application.EnableEvents = True
                Exit Sub
            End If
        End If
    Next i
    Application.EnableEvents = True
If Sheets("data").Range("M2") < 0 Then
MsgBox "Er zijn meer uren geclaimd dan ingezet.Controleer de geclaimde uren.", vbCritical, "Controle inzet"

End If
    
End Sub

Cel T6 wordt nu keurig gevuld, maar wil dat de VBA het zelfde doet voor ook locatie B, C en D. En de waarde van inputbox van B moet dan naar U6, C naar V6 en D naar W6.

Hopelijk is het een beetje duidelijk.
 
Nee, niet echt. Heb je al eens aan een voorbeeldbestandje gedacht? :)
 
Voorbeeld toegevoegd

Zo het heeft even gebeurt, maar heb even voorbeeld gemaakt

Bij inzet(C4) vermeld ik een aantal en met de huidige macro moeten de ingezetten uren verdeeld worden over de vier locactie's(A,B.C,D) anders kunnen ze niet verder. In K4 zit een teller en deze gebruik ik ook in de msg box om aan te geven hoeveel uren er nog te verdelen zijn.

Echter wil ik werken met een inputbox. Wil dat hij bij elke locatie apart een input box geeft en dat je daar daar de in te zetten uren invoert en dat deze dan in de juist cel worden gezet.
In met mijn eerdere bericht had ik al iets geprobeerd en dat werkt maar dan alleen voor de locatie Amsterdam maar niet voor de andere.
 

Bijlagen

In al jouw vragen heb je alleen maar ellende door zeer slecht gestructureerde gegevens. Begin met jouw data in A1. Maak gebruik van een tabel of tabellen dan heb je al die gedefinieerde namen niet nodig. Voor gegevensinvoer gebruik je een Userform ipv een inputbox. Het doel van automatiseren is om het de gebruiker makkelijker ipv van zeer onhandig te maken. Input- en Msgboxen zijn compleet overbodig en irritant. Het voorbeeldbestand is ook niet veelzeggend.
 
Natuurlijk is dat middels VBA mogelijk!
De voorbeeld code in je startpost sluit niet echt aan bij je voorbeeld bestand. Dus wat lastig.

Maar zoals hierboven aangegeven is het gebruik van zoveel inputboxes e.d. niet fijn voor de eindgebruiker. Dus vraag je eerst af of je dit wel wilt. Ik zou een voorwaardelijke opmaak aanraden om de gebruiker te attenderen op een onvolledige uren verantwoording.

Natuurlijk is het een deel van een 'groter' iets. dus als het echt moet kan ik wel een vba-tje neerzetten
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan