anoniem Geplaatst: 6 juni 2003 Delen Geplaatst: 6 juni 2003 Hallo allemaal, Ik heb een macrootje dat gegevens verplaatst. Nu wil ik door middel van een Inputbox de data naar het in te vullen celadres verplaatsen. Het blijft steken op de regel ActiveSheet.Paste Wat doe ik verkeerd? Alvast bedankt, Sjaan [code:1:f14c34a128] Sub Verplaatsen() ' ' Verplaatsen Macro ' De macro is opgenomen op 6-6-2003 door aclieder. ' ' Sneltoets: CTRL+e ' Dim doel As Range Range("A1:A4").Select Selection.Cut Set doel = Application.InputBox(prompt:="Vul het doeladres in", Type:=8) doel.Select ActiveSheet.Paste End Sub [/code:1:f14c34a128] Quote Link naar reactie
anoniem Geplaatst: 7 juni 2003 Auteur Delen Geplaatst: 7 juni 2003 Heb de code iets verandert: [code:1:68b0aad907] Dim doel As String Range("A1:A4").Select Selection.Cut doel = InputBox(prompt:="Vul het doeladres in") If doel <> "" Then Range(doel).Select ActiveSheet.Paste End If [/code:1:68b0aad907] Ruud Quote Link naar reactie
anoniem Geplaatst: 8 juni 2003 Auteur Delen Geplaatst: 8 juni 2003 Het werkt als een trein. Dank je wel. Maar waar zat nou het euvel? In het type variabele? Sjaan Quote Link naar reactie
anoniem Geplaatst: 8 juni 2003 Auteur Delen Geplaatst: 8 juni 2003 De variabele [i:bb4437fee8]doel[/i:bb4437fee8] is van het type object (het "range object" in dit geval). Je kan dan alleen een waarde toewijzen van hetzelfde type. De inputBox-functie retourneert altijd een "string". Vandaar de foutmelding. Het volgende stukje code is een voorbeeld met het toewijzen van een waarde aan het range-object: [code:1:bb4437fee8] Dim doel As Range Dim inputRange As String Range("A1:A3").Select Selection.Cut inputRange = InputBox(prompt:="Doelcel: ") Set doel = Range(inputRange) doel.Select ActiveSheet.Paste ' Het object altijd deleten als je hem niet meer nodig hebt set doel = nothing [/code:1:bb4437fee8] Ruud Quote Link naar reactie
Aanbevolen berichten
Om een reactie te plaatsen, moet je eerst inloggen