Avatar billede familienriis Nybegynder
02. november 2007 - 22:31 Der er 5 kommentarer og
2 løsninger

få vist teksten fra en tilfældig celle i min statusbar

Når jeg kører en kode, kunne jeg godt tænke mig at den slutter med at skrive en tekst i min status bar.

JEg er med på koden hedder:
Application.StatusBar = "PRØVETEKST1"

For at få den til at skirve noget

Men jeg kunne den godt tænke mig at den kunne skrive en tekst fra en liste.

celle a1 = tekst1
calle a2 = tekstnr 2
celle a3 = prøve tekst
osv.


De forskellige tekster står i et område, som jeg har kaldt hjælpetekster.

Kan det lade sig gøre at den viser teksten fra en tilfældig celle i området?
og hvis det ikke kan lade sig gøre.

Så en tilfældig tekst fra området a1-a10 i "ark2"
Avatar billede excelent Ekspert
03. november 2007 - 08:21 #1
Application.StatusBar = Cells(Rnd * 9 + 1, 1)
Avatar billede jlemming Nybegynder
03. november 2007 - 08:22 #2
denne tager et tilfældig fra a1-a10

hvis du ønsker det med et område, kan man nok hente område værdierne ud, og indsætte dem som max i rnd

Sub Knap1_Klik()
tilfaeldig = Int((10 * Rnd) + 1)
Application.StatusBar = Sheets("ark2").Cells(tilfaeldig, 1).Value

For t = 0 To 65535000
   
Next t
Application.StatusBar = False
End Sub
Avatar billede jlemming Nybegynder
03. november 2007 - 09:59 #3
Dette er et lille stykke ekstra på vejen.

med du skal stadigvæk selv sætte dit start og længde på området.
Jeg kan ikke finde metode til at regne diff. på kolonne og række
Der findes godt nok en range("").RowDifferences, men jeg kan ikke få den til at virke.
Det er der måske andre der kan??

int((længde * rnd) + start)


tilr = Int((9 * Rnd) + 1)
tilc = Int((0 * Rnd) + 1)
Application.StatusBar = Range("omrade").Cells(tilr, tilc)
Avatar billede familienriis Nybegynder
03. november 2007 - 10:34 #4
jeg har testet excelents forslag og jlemmings den første.

Begge virker fint.
Det bedste ville dog have været at jeg kunne navngive i et område. Men dette går også.

Den sidste kommentar fra jlemming forstår jeg desværre ikke. Kan ikke få den til at virke.

Da I begge har leveret et skal, skal vi lige have delt pointene mellem jer.

Og så til sidst. Tak for indsatsen :-)
Avatar billede excelent Ekspert
03. november 2007 - 11:30 #5
ok her et svar fra mig
vender tilbage hvis jeg finder en løsning med navngivet område
Avatar billede jlemming Nybegynder
03. november 2007 - 15:40 #6
ok

2. kommentar var et forsøg på at løse det med et navngivet område.
men det virke desværre ikke helt :-(
Avatar billede excelent Ekspert
05. november 2007 - 21:50 #7
Denne vælger en tilfældig værdi i det navngivne område "Hjælpetekster"
måske ikke særlig elegant, men det virker da :-)

Sub Status()
Randomize Timer
x = Int(Rnd * 9 + 1)
For Each c In Sheets("Ark2").Range("Hjælpetekster")
t = t + 1: If t = x Then x = Sheets("Ark2").Range(c.Address)
Next
Application.StatusBar = x
End Sub
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester