Just nu i M3-nätverket
Gå till innehåll

Scrolla med VBA och placera aktiv cell uppe till vänster


frank_90

Rekommendera Poster

Det går ju att med VBA ställa in så att hyperlänkar i dokumentet scrollar upp målcellen överst.

 

Det jag skulle vilja är att målcellen alltid placeras längst upp till VÄNSTER i dokumentet.

 

Har googlat intensivt men hittar ingen lösning.

 

Alltså:

<Klickar på en länk>

Tar mig till G1 (G1 visas högst upp till vänster i fönstret)

 

Går det?

Länk till kommentar
Dela på andra webbplatser

Nope, fungerar tyvärr inte. 

 

Har lagt in koden i detta blad (se skärmdump). Klickar på en hyperlink jag skapat.

 

Excel flyttar fokus till den cellen. Problemet är att den cellen nu är markerad längst till HÖGER uppe i skärm. Jag tvingas alltså scrolla horisontellt hela vägen för att få denna cell att vara den som syns i längst upp till vänster.

 

Några andra idéer om det här – om det ens är möjligt att lösa :-)

 

10eemj6.png

 

zmm8ed.png

 

 

Microsoft Excel 2015 på Mac (senaste version).

Länk till kommentar
Dela på andra webbplatser

Kanske är det något Mac-specifikt?

 

Får det inte att fungera på något av ovanstående sätt. Om du eller någon annan har möjlighet att testa snabbt om det funkar på Windows vore det bra att veta (så jag inte göra något fel). Här ligger filen:

 

https://dl.dropboxusercontent.com/u/18912392/GA_TILL_CELL_HYPERLINK.xlsm

Länk till kommentar
Dela på andra webbplatser

Ove Söderlund

Jag ställer mig frågan till att använda länkar är en bra metod för det du vill göra. I grund och botten går det inte att koppla VBA-kod till en länk utan du försöker fånga upp en event när länken klickas. Jag tycker nog att precis som MH_resurrected föreslår, att du bör jobba med vanliga ranges. Exempelkoden här nedan fungerar fint på min burk med Windows och Excel 2010. Det är nog inga större problem att modifiera koden så att den passar just din applikation.


Option Explicit

Sub SendActiveCell()

    Dim ThisCell As Range
    
    Set ThisCell = Cells(Selection.Row, Selection.Column)
    
    Call Worksheet_SelectionChange(Range(ThisCell.Address))

End Sub


Sub Worksheet_SelectionChange(ByVal Target As Range)
    
    Application.EnableEvents = False
        
        ActiveWindow.ScrollColumn = Target.Column
        ActiveWindow.ScrollRow = Target.Row
    
    Application.EnableEvents = True

End Sub


Länk till kommentar
Dela på andra webbplatser

Ove Söderlund

mmh, hur är det med VBA på Macintosh?

 

Har ingen egen erfarenhet av VBA där..

 

Man kan väl direkt säga att utveckling mha makro/VBA är milt sagt styvmoderligt behandlat i Mac-miljö. Vad jag förstår är VBA fullt implementerat i Excel 2011 men att olikheter mellan Windows och Mac gör att det kvarstår en hel del problem som behöver lösas. Ron de Bruin har en Mac-sektion på sin sajt där det finns mer läsvärt om Excel för Mac vad gäller problem och lösningar. Med tanke på att Excel VBA härstammar från Excel 5.0 / Excel 95 så är det kanske inte så konstigt att VBA i Windows-miljö fungerar i stort sett alltid smärtfritt och att i Mac-miljön ska det anpassas så till hur Excel och Windows fungerar. Jag tror att det kommer att vara svårt att få fullständig kompatibilitet för Excel för Mac.

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...