Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Tabbar i Excel/VBA

Postades av 2002-08-01 10:14:57 - Göran Kull, i forum microsoft office, Tråden har 8 Kommentarer och lästs av 1590 personer


Har gjort kontroller direkt på datablad och skulle vilja kunna tabba mellen de olika kontrollerna. Använder ej Userform men undrar om det finns något sätt då jag ej sett något " TabIndex " el "TabOrder"bland property
Tacksam för hjälp!

MVH
/GK


Svara

Sv: Tabbar i Excel/VBA

Postades av 2002-08-01 11:55:52 - Eventine Elessendil

Nja, jag tror inte det går att bara tabba sig genom, utan du får lägga kod för att lyckas med det. </BR>
Ett exempel på hur det skulle kunna se ut: </BR>
<code>
Private Sub TextBox1_KeyUp(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = vbKeyTab Then
' Tab skickar användaren vidare till nästa kontroll
TextBox2.Activate
End If
End Sub

Private Sub TextBox2_KeyUp(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = vbKeyTab And Shift = 1 Then
' Shift+Tab skickar användaren till föregående kontroll
TextBox1.Activate
ElseIf KeyCode = vbKeyTab Then
' Tab skickar användaren vidare till nästa kontroll
TextBox3.Activate
End If
End Sub
</code>

/EE


Svara

Sv: Tabbar i Excel/VBA

Postades av 2002-08-01 21:53:29 - Raderat konto

Nopp, precis som EE skriver det måste till kod:

Placera följande i modulen ThisWorkbook
[kod]
Public C As Collection

Private Sub Workbook_Open()
Dim Obj As OLEObject
Set C = New Collection
For Each Obj In Sheet1.OLEObjects
If TypeOf Obj.Object Is MSForms.TextBox Then
C.Add New Class1
With C(C.Count)
Set .TB = Obj.Object
Set .Object = Obj
.Index = C.Count
End With
End If
Next Obj
End Sub
[/kod]

I en klassmodul - Class1
[kod]
Public WithEvents TB As MSForms.TextBox
Public Object As OLEObject
Public Index As Integer

Private Sub TB_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
ByVal Shift As Integer)
Dim I As Integer, TBCount As Integer
If KeyCode <> 9 Then Exit Sub
TBCount = ThisWorkbook.C.Count
If Shift Then
If Index = 1 Then I = TBCount Else I = Index - 1
Else
If Index = TBCount Then I = 1 Else I = Index + 1
End If
ActiveWindow.RangeSelection.Select
ThisWorkbook.C(I).Object.Activate
End Sub
[/kod]


Tas det bort eller läggs till objekt måste koden köras om igen.

//MW


Svara

Sv: Tabbar i Excel/VBA

Postades av 2002-08-02 09:48:33 - Göran Kull

Tack för hjälpen EE. Jag försökte lägga in kodex. på TextBox1 men fick då körfel 1004 "Activate-metoden i OLE-objekt klassen misslyckades".
Har jag några felaktiga inställningar?
Vore tacksam för vidare hjälp

MVH
/GK


Svara

Sv: Tabbar i Excel/VBA

Postades av 2002-08-02 10:31:30 - Eventine Elessendil

Heter rutan TextBox1, eller har du ändrat namnet?
Använder du kontrollerna från "Kontroller"?

Borde fungera då ... Kolla och återkom.
/EE


Svara

Sv: Tabbar i Excel/VBA

Postades av 2002-08-02 18:41:48 - Raderat konto

GK,

...och mitt förslag fungerade..............

//MW


Svara

Sv: Tabbar i Excel/VBA

Postades av 2002-08-02 23:51:31 - Eventine Elessendil

Ja, det gör mitt med, hos mig. ;-)
Ditt såg bra ut, även om jag inte testade det. Men det gäller att ha ordning på vilka kontroller som ska ingå i "tab-serien" så att säga. Man vill kanske sätta TabStop=False på vissa kontroller, samt att alla inte måste vara av samma typ. I mitt exempel måste man istället komma ihåg att lägga till koden för varje objekt som ska ingå, och då lägga ordningen redan där ...
Smal sak att lägga till i koden, bara en reflektion. :-)
Må väl i värmen.
/EE


Svara

Sv: Tabbar i Excel/VBA

Postades av 2002-08-03 00:21:31 - Raderat konto

EE,

Absolut ingen kritik åt ditt förslag :-)
Alla lösningarna har sina fördelar ;-)

//MW


Svara

Sv: Tabbar i Excel/VBA

Postades av 2002-08-04 09:30:54 - Eventine Elessendil

MW,
Nä, jag var nog ganska trött när jag läste och svarade också. :-)
Klart att alla lösningar har sina fördelar, och jag använder ju mycket sällan kontroller direkt på arbetsbladet utan väljer hellre fristående formulär genom VBA.
Lite nyfiken på att testa ditt exempel, men har inte hunnit än (övers: jag har varit för lat ;-) ).
Nu är det två veckor semester! :-)
Må väl.
/EE


Svara

Nyligen

  • 17:03 Getmancar your go-to carsharing
  • 14:07 Games
  • 17:54 Vegastars New Zealand
  • 16:56 Verde Casino Danmark
  • 13:54 Vegastars: Top Australian Online C
  • 21:28 Chicken Road Casino Game
  • 21:21 1xBet Promo Code 2025
  • 18:37 Remove the bumper in AUDI

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 571 428
27 965
271 785
1 613
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies