Opgelost Inputbox om selectie laten vragen

  • Onderwerp starter Onderwerp starter KeBr
  • Startdatum Startdatum
Dit topic is als opgelost gemarkeerd
Status
Niet open voor verdere reacties.

KeBr

Gebruiker
Lid geworden
25 apr 2016
Berichten
183
Beste,

Onderstaande code heb ik om een x aantal dagen bij een datum op te tellen of ervan af te halen.
Deze werkt goed. Echter zou ik willen dat de msgbox eerst vraagt om een selectie te maken in kolom D

Code:
Sub Startdatum_aanpassen()

Dim SelectedRange As Range

Set SelectedRange = Selection

    AddDays = InputBox("geef het aantal dagen op dat bij de datum moet worden opgeteld...", "Add Days to Date")

For Each cell In SelectedRange

    If IsDate(cell.Value) Then
        cell.Offset(0, 0).Value = DateAdd("d", AddDays, cell.Value)
    Else
        Exit Sub
    End If
Next cell

End Sub
 

Bijlagen

Maak gebruik van "Application.Inputbox", dan alleen maar "Inputbox".
In de parameter → 'type' geef je een 8 in zodat je alleen een range kan invullen.
 
Beste HSV,

Ik heb de genoemde wijzigingen aangebracht. Dit werkt niet. Krijg wel de vraag om cellen te selecteren. maar vervolgens geen vraag hoeveel er toegevoegd moet worden.
Code:
Sub Startdatum_aanpassen()

Dim SelectedRange As Range

Set SelectedRange = Selection

    AddDays = Application.InputBox("selecteer cellen om datum aan te passen", "Add Days to Date", , , , , , 8)

For Each cell In SelectedRange

    If IsDate(cell.Value) Then
        cell.Offset(0, 0).Value = DateAdd("d", AddDays, cell.Value)
    Else
        Exit Sub
    End If
Next cell

End Sub
 
Je wilt 2 dingen weten, dan zal je 2 vragen moeten stellen.
 
Ik heb het intussen opgelost, bedankt voor het meedenken.
Code:
Sub Startdatum_aanpassen()

Dim SelectedRange As Range


Set SelectedRange = Application.InputBox("selecteer cellen", Type:=8)

    AddDays = Application.InputBox("geef het aantal dagen op dat bij de datum moet worden opgeteld...", "Add Days to Date")
    
For Each cell In SelectedRange

    If IsDate(cell.Value) Then
        cell.Offset(0, 0).Value = DateAdd("d", AddDays, cell.Value)
    Else
        Exit Sub
    End If
Next cell

End Sub
 
En geef bij addDays type:= 1 in, zodat het alleen getallen mogen zijn.

En cell.value is gelijk aan cell.offset(0,0).value.
Met andere woorden; offset(0,0) doet niets.
 
Bedankt voor de aanvulling. Ik ga dit aanpassen.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan