Hej ,ja undrar om markören tex står i cell b:1 när man då trycker Enter Kjell, Tack det funkar fint detta ,men vill sedan gå från cell E15 till G12 ,tänkte det var bara lägga dit en ny rad,, Kjell, jag håller på med en blankett ,som ska skrivas i olika celler,,det är därför ja vill kunna styra ,markören i en viss ordning när man trycker på Enter Kjell, tack det fungerar som ja vill nu,hade sammanfogat celler,vilket påverkade en del från början*S* Hej Kjell!Flytta markeringen vid inmatning i en cell (Excel 2000)
ska den hamna cell E:15 är detta möjligt i vba????? kan nån hjälpa mej med det???????? Sv: Flytta markeringen vid inmatning i en cell
Ja, det är möjligt :-)
Placera följande kod i modulen "Thisworkbook":
<code>
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.OnEntry = ""
End Sub
Private Sub Workbook_Open()
Application.OnEntry = "Kjell"
End Sub
</code>
I en allmänt modul:
<code>
Sub Kjell()
If ActiveSheet.Name <> "Blad1" Then Exit Sub
If ActiveCell.Address <> "$B$1" Then Exit Sub
Range("E15").Select
End Sub
</code>
Mvh
XL-DennisSv: Flytta markeringen vid inmatning i en cell
If ActiveCell.Address <> "$E$15" Then Exit Sub
Range("G12").Select
men det gick inte riktigt bra ,*S*
markören stannar inte i cell E15 så jag hinner se det iaf,den går direkt till G12
ja hur gör man nu då???????? Sv: Flytta markeringen vid inmatning i en cell
Vad ska du göra i cellen E15 om du ändå ska gå vidare till cellen G12?
Ska du tilldela cellen E15 ett värde e d så:
Range("E15").Value = "XL-Dennis"
Mvh
XL-DennisSv: Flytta markeringen vid inmatning i en cell
Ibland ska markören gå nedåt ,ibland åt höger,det är det jag vill kunna göraSv: Flytta markeringen vid inmatning i en cell
Pröva med följande:
<code>
Sub Kjell()
Select Case ActiveCell.Address
Case "$B$1"
Range("E15").Select
Case "$E$15"
Range("G12").Select
End Select
End Sub
</code>
Mvh
XL-DennisSv: Flytta markeringen vid inmatning i en cell
man lär sej alltid något*
Tack för hjälpen!!!Sv: Flytta markeringen vid inmatning i en cell
Eftersom du kör Excel 2000 föreslår jag att du inte använder dolda händelser. OnEntry finns bara kvar för att vara kompatibel med gammal Excel95 kod. Använd dig av händelserna:
Private Sub Worksheet_Change(ByVal Target As Range)
End Sub
eller:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
End Sub
Vilken du väljer beror på om du vill trigga händelsen "ändra värde" eller bara "markera ny cell". Skriv koden direkt i bladmodulen så slipper du testa - ActiveSheet.Name = "Blad1" och koden körs inte heller varje gång du ändrar värde i annat blad.
Kommentar:
Skriv gärna
Sub Kjell()
If ActiveSheet.Name = "Blad1" and ActiveCell.Address = "$B$1" Then
Range("E15").Select
End Sub
istället för:
Sub Kjell()
If ActiveSheet.Name <> "Blad1" Then Exit Sub
If ActiveCell.Address <> "$B$1" Then Exit Sub
Range("E15").Select
End Sub
goto-liknande programkod är alltid mycket svårare att följa än strukterarad kod.
mvh
/Michael