Dansk Regneark Forum
  Hjælp Hjælp  Søg i forum   Arrangementer   Opret ny bruger Opret ny bruger  Log ind Log ind


Emne lukketDialogboks vha makro

 Besvar Besvar
Forfatter
peda Se dropdown
Sølv bruger
Sølv bruger
Avatar

Medlem: 30.Nov.2010
Land: Danmark
Status: Offline
Point: 109
Direkte link til dette indlæg Emne: Dialogboks vha makro
    Sendt: 02.Feb.2011 kl. 09:18
Hej Gruppe
Jeg har et regneark med en masse navne. Mit ønske er, via en makro at kunne fremkalde dialogboksen Tekstfilter
 
 
med mulighed for at taste en værdi og derpå søge. I en ældre version af excel har nedenstående kode virket, men det gør den ikke mere!!
 
Sub søg_fornavn()
'
' søge Makro
' Makro indspillet 19-12-2003 af Hung
'
   Dim Svar As Boolean
    Svar = Application.Dialogs(xlDialogFilter).Show(7)
End Sub
 
Kan I hjælpe med den rigtige kode til Excel 2010
 
mvh
Peda
Til top



Til top
Allan Se dropdown
Forum Admin
Forum Admin
Avatar
Forum Admin

Medlem: 03.Feb.2010
Land: Danmark
Status: Offline
Point: 10330
Direkte link til dette indlæg Sendt: 02.Feb.2011 kl. 13:09
Hej Peda,
 
Jeg tror denne kode vil virke, jeg mener nemlig at skillelinjen mellem de 2 måder går ved 2007
 
Sub find_fornavn()
Dim Svar As Boolean
If Application.Version > 12 Then
    Svar = Application.Dialogs(xlDialogFilter).Show(7)
Else
    Svar = Application.Dialogs(xlDialogFilter).Show(6)
End If
End Sub
 
Prøv den lige af hos dig
 
//Allan
Til top
peda Se dropdown
Sølv bruger
Sølv bruger
Avatar

Medlem: 30.Nov.2010
Land: Danmark
Status: Offline
Point: 109
Direkte link til dette indlæg Sendt: 02.Feb.2011 kl. 14:53
Hej Allan
Makroen kører godt nok uden  fejl. Da den tilsyneladende ender med den nederste (6), så ender denmed at søge i kolonne 6 i stedet for kolonne 7. Dermed forsøger den at returnere noget fra en forkert kolonne.
Jeg forstår ikke helt hvorfor kolonnenummeret skal ændres med versionen. Har du en forklaring på det?
 
mvh
Peda
Til top
Allan Se dropdown
Forum Admin
Forum Admin
Avatar
Forum Admin

Medlem: 03.Feb.2010
Land: Danmark
Status: Offline
Point: 10330
Direkte link til dette indlæg Sendt: 02.Feb.2011 kl. 14:57

Hej peda,

Har du autofilter på kolonne G?
 
//Allan
Til top
peda Se dropdown
Sølv bruger
Sølv bruger
Avatar

Medlem: 30.Nov.2010
Land: Danmark
Status: Offline
Point: 109
Direkte link til dette indlæg Sendt: 02.Feb.2011 kl. 14:59
Ja, som udgangspunkt har jeg autofilter på. Bruger ikke altid makroen til at aktivere boksen
mvh
Peda
Til top
Allan Se dropdown
Forum Admin
Forum Admin
Avatar
Forum Admin

Medlem: 03.Feb.2010
Land: Danmark
Status: Offline
Point: 10330
Direkte link til dette indlæg Sendt: 02.Feb.2011 kl. 16:12
Så burde den da virke i kolonne 7 (G) 
Application.Dialogs(xlDialogFilter).Show(7)
Vises dialogboksen slet ikke?
 
//Allan
 
 
Til top
peda Se dropdown
Sølv bruger
Sølv bruger
Avatar

Medlem: 30.Nov.2010
Land: Danmark
Status: Offline
Point: 109
Direkte link til dette indlæg Sendt: 03.Feb.2011 kl. 12:06
Hej Allan
Nu kører den - Tusind tak.
Denoprindelige kode som du sendte:
 
Sub find_fornavn()
Dim Svar As Boolean
If Application.Version > 12 Then
    Svar = Application.Dialogs(xlDialogFilter).Show(7)
Else
    Svar = Application.Dialogs(xlDialogFilter).Show(6)
End If
End Sub
 
Her har jeg vendt STørre end tegnet, så funker det fint.
Nu har jeg været inde i stifinder og konstateret at min excel version benævnes som Office version 14. Jeg kan stadig ikke forstå hvorfor den IKKE virker med denne kode:
 
Sub find_fornavn()
Dim Svar As Boolean
    Svar = Application.Dialogs(xlDialogFilter).Show(7)
End Sub
 
Den vil vel altid ende i denne linie, når jeg bruger version 14.
Det har ingen betydning jeg er bare nysgerrig
 
mvh
Peda
 
Til top
Allan Se dropdown
Forum Admin
Forum Admin
Avatar
Forum Admin

Medlem: 03.Feb.2010
Land: Danmark
Status: Offline
Point: 10330
Direkte link til dette indlæg Sendt: 03.Feb.2011 kl. 14:32
Hej Peda,
 
Jeg ved det faktisk ikke, jeg havde oprindelig misforstået dit spørgsmål.Tongue
Men jeg vil alligevel spørge om hvad du bruge 'Svar' til, siden den sættes til Boolean (True or False)
 
Hvis du ikke skal bruge 'Svar' til noget, hvad så hvis du bare bruger denne kode:
 
Sub find_fornavn()
Application.Dialogs(xlDialogFilter).Show (7)
End sub
 
//Allan
Til top
peda Se dropdown
Sølv bruger
Sølv bruger
Avatar

Medlem: 30.Nov.2010
Land: Danmark
Status: Offline
Point: 109
Direkte link til dette indlæg Sendt: 03.Feb.2011 kl. 14:50
Hej Allan
Det er her den store mystik opstår. Hvis jeg anvender din nye kode og indtaster noget i dialogboksen og trykker OK, så!!!
og herpå låser Excel fuldstændigt, men bruger jeg den anden kode virker det.
 
Jeg kan ikke forklare mere. bare mærkeligt ikke
 
mvh
Peda
Til top
Allan Se dropdown
Forum Admin
Forum Admin
Avatar
Forum Admin

Medlem: 03.Feb.2010
Land: Danmark
Status: Offline
Point: 10330
Direkte link til dette indlæg Sendt: 03.Feb.2011 kl. 15:18
Ja, det noget mystisk.
Hovedsagen er dog at det virker nu Confused
 
God dag Peda.
 
//Allan
Til top
peda Se dropdown
Sølv bruger
Sølv bruger
Avatar

Medlem: 30.Nov.2010
Land: Danmark
Status: Offline
Point: 109
Direkte link til dette indlæg Sendt: 03.Feb.2011 kl. 15:24
Tak i lige måde
peda
Til top
rassten Se dropdown
Guld bruger
Guld bruger


Medlem: 26.Okt.2010
Status: Offline
Point: 694
Direkte link til dette indlæg Sendt: 03.Feb.2011 kl. 18:15
Undskyld jeg blander mig, men der skal ikke () om tallet

Application.Dialogs(xlDialogFilter).Show 7


VH rassten

Arbejde excel 2010
Privat excel 2010
Til top
Allan Se dropdown
Forum Admin
Forum Admin
Avatar
Forum Admin

Medlem: 03.Feb.2010
Land: Danmark
Status: Offline
Point: 10330
Direkte link til dette indlæg Sendt: 03.Feb.2011 kl. 21:44
Hej rassten,
 
Med eller uden () giver giver ingen forskel hos mig.
Spørgsmålet er om det giver forskel hos peda på hans Excel 2010.
 
Rassten, kan du forklare mysteriet mht. peda's problem?
 
Sub find_fornavn()
Dim Svar As Boolean
Svar = Application.Dialogs(xlDialogFilter).Show (7)
End sub
Virker ikke
 
MEN
 
Sub find_fornavn()
Dim Svar As Boolean
If Application.Version > 12 Then
    Svar = Application.Dialogs(xlDialogFilter).Show(7)
Else
    Svar = Application.Dialogs(xlDialogFilter).Show(6)
End If
End Sub
Virker...
 
(Jeg skal nok udelade paranteserne en anden gang) LOL 
 
//Allan
 
Til top
rassten Se dropdown
Guld bruger
Guld bruger


Medlem: 26.Okt.2010
Status: Offline
Point: 694
Direkte link til dette indlæg Sendt: 03.Feb.2011 kl. 22:09
Desværre kan jeg ikke hjælpe. Begge virker fint hos mig.
Og den eneste forskel er om det er kolonne F eller G som bliver filtreret, om det er over eller under version af excel 2003

Jeg kan få en fejlmeddelelse, hvis jeg har glemt filter på øverste række.

Beklager ikke til megen hjælp

VH rassten

Arbejde excel 2010
Privat excel 2010
Til top
rassten Se dropdown
Guld bruger
Guld bruger


Medlem: 26.Okt.2010
Status: Offline
Point: 694
Direkte link til dette indlæg Sendt: 03.Feb.2011 kl. 22:16
Men der selvfølgelig også en helt anden måde


Sub B_test()
ExecuteExcel4Macro "filter?(7)"
End Sub

VH rassten

Arbejde excel 2010
Privat excel 2010
Til top
Allan Se dropdown
Forum Admin
Forum Admin
Avatar
Forum Admin

Medlem: 03.Feb.2010
Land: Danmark
Status: Offline
Point: 10330
Direkte link til dette indlæg Sendt: 04.Feb.2011 kl. 09:30
Citat: rassten rassten skrev:

Desværre kan jeg ikke hjælpe. Begge virker fint hos mig.
Og den eneste forskel er om det er kolonne F eller G som bliver filtreret, om det er over eller under version af excel 2003
Det samme her...
 
Citat: rassten rassten skrev:

Men der selvfølgelig også en helt anden måde

Sub B_test()
ExecuteExcel4Macro "filter?(7)"
End Sub

Virker også fint her, den er i hvert fald mere elegant end min med 'Application.version' Wink som egentlig kun kom på banen fordi jeg havde misforstået spørgsmålet.
 
Tak for input rassten.
 
//Allan
Til top
peda Se dropdown
Sølv bruger
Sølv bruger
Avatar

Medlem: 30.Nov.2010
Land: Danmark
Status: Offline
Point: 109
Direkte link til dette indlæg Sendt: 08.Feb.2011 kl. 19:15
Hej Allan og Rassten
 
Nu kan det vist ikek blive mere elegant. Flot kodestump, hvor er Excel dog smart, og jeg er glad for at I har hjulpet begge to
TAK
 
mvh
Peda
Til top
 Besvar Besvar

Skift forum Forum tilladelser Se dropdown

© 2010 - 2024 Dansk Regneark Forum - en del af Excel-regneark.dk