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


Emne lukketKøre VBA i et vindue og åbne andre excel filer

 Besvar Besvar
Forfatter
AFH Se dropdown
Forum Begynder
Forum Begynder


Medlem: 08.Apr.2014
Land: Danmark
Status: Offline
Point: 11
Direkte link til dette indlæg Emne: Køre VBA i et vindue og åbne andre excel filer
    Sendt: 08.Apr.2014 kl. 11:19
Hejsa.

Jeg har nu efterhånden brugt en del tid på at udvikle en VBA som kan bruges som tidsregistrering af forskellige arbejdsopgaver, der er også indbygget kørebog osv.

Alt det man udfylder skriver userformen til excel arket.
Når dette excel ark er åbent og jeg får "VBA vinduet" frem, kan jeg ikke åbne andre excel filer på maskinen.

Er der en løsning på denne problemstilling?

Håber det giver mening. På forhånd tak.Smile
Til top



Til top
EXCELGAARD Se dropdown
Platin bruger
Platin bruger


Medlem: 27.Dec.2012
Land: Denmark
Status: Offline
Point: 5417
Direkte link til dette indlæg Sendt: 08.Apr.2014 kl. 11:52
Hvad er det for et 'VBA Vindue', du snakker om?
Er det UserFormen?

Hvis det er, hvorfor har du så behov for at kunne åbne andre regneark, mens brugeren udfylder UserFormen?

Hvis det ikke er UserFormen, hvad er det, der gør, at du ikke kan åbne andre regneark?
Husk, at trykke på [Tak], hvis du kan lide et indlæg.
Husk, at trykke på [Accepteret Svar], hvis du kan bruge et løsningsforslag.
Til top
AFH Se dropdown
Forum Begynder
Forum Begynder


Medlem: 08.Apr.2014
Land: Danmark
Status: Offline
Point: 11
Direkte link til dette indlæg Sendt: 08.Apr.2014 kl. 12:30
Hej Excelgaard

Ja, undskyld, det er UserFormen. 

Det er et vindue vi åbner om morgenen, og så trykker vi på "Start ny opgave" udfylder felter i løbet af opgaven, og når vi så er klar til næste opgave, trykker vi igen på knappen i UserFormen "Start ny opgave", så tager den automatisk de forskellige tidspunkter og registrere dem.
Dvs. at UserFormen altid er åben. 

Det gør så samtidig at vi ikke kan åbne andre excelfiler.

Findes der en løsning på dette?
Til top
EXCELGAARD Se dropdown
Platin bruger
Platin bruger


Medlem: 27.Dec.2012
Land: Denmark
Status: Offline
Point: 5417
Direkte link til dette indlæg Sendt: 08.Apr.2014 kl. 12:39
Åbn UserFormen i 'Modeless' mode:
UserForm1.Show vbModeless
Udskift selv 'UserForm1', med, hvad jeres UserForm hedder...
Husk, at trykke på [Tak], hvis du kan lide et indlæg.
Husk, at trykke på [Accepteret Svar], hvis du kan bruge et løsningsforslag.
Til top
AFH Se dropdown
Forum Begynder
Forum Begynder


Medlem: 08.Apr.2014
Land: Danmark
Status: Offline
Point: 11
Direkte link til dette indlæg Sendt: 08.Apr.2014 kl. 13:37
Hej igen,

Waow, det virker bare super godt, tusinde tak for hjælpen.

Kan man på nogle måde minimere denne UserForm så den kommer til at ligge på process linien, eller i det mindste er "låst" det til ark den er programmeret i/til (Så den ikke altid ligger forrest?


Til top
EXCELGAARD Se dropdown
Platin bruger
Platin bruger


Medlem: 27.Dec.2012
Land: Denmark
Status: Offline
Point: 5417
Direkte link til dette indlæg Sendt: 08.Apr.2014 kl. 14:14
Selvfølgelig virker det - det er jo Excel Wink

UserFormen er låst op mod det regneark, den er oprettet i...

Hvis dette regneark minimeret, så minimeres UserFormen osse.
Hvis dette regneark ikke er det aktive regneark (der er et andet regneark ovenover det), så er UserForm heller ikke synlig.

Hvis du tænker på fanebladene i dit regneark, så er dette ikke muligt, da det er regnearket, der er bestemmende for om UserForm er aktiv eller ej.

Alternativt kan man midlertidigt skjule UserFormen (altså ikke lukke/unloade den).

Lav evt. en knap til dette...
Husk, at trykke på [Tak], hvis du kan lide et indlæg.
Husk, at trykke på [Accepteret Svar], hvis du kan bruge et løsningsforslag.
Til top
AFH Se dropdown
Forum Begynder
Forum Begynder


Medlem: 08.Apr.2014
Land: Danmark
Status: Offline
Point: 11
Direkte link til dette indlæg Sendt: 09.Apr.2014 kl. 09:57
Det er jo skide smart det der excel ;o)

Kan man lave det så UserFormen bliver minimeret ved tryk på F8, og hvis man trykker igen kommer den frem igen ? =)
Til top
EXCELGAARD Se dropdown
Platin bruger
Platin bruger


Medlem: 27.Dec.2012
Land: Denmark
Status: Offline
Point: 5417
Direkte link til dette indlæg Sendt: 09.Apr.2014 kl. 10:18
Ja, og nej...

Man, kan ikke lave det således, at userFormen bliver 'ægte' minimeret, men man kan 'snyde' så det ser således ud Smile

Metoden er, at man benytter .OnKey til at tildele en makro til f.eks. [F8].
Og, i denne makro indstiller man dernæst størrelsen og placeringen på UserFormen, så den virker 'minimeret'.

Størrelsen på userFormen, sættes med .Height og .Weight, mens placeringen sættes med .Left  og .Top.

Og, for at få [F8] til at skifte mellem 'minimeret' og 'maksimeret', lader man blot makroen læse den nuværende størrelse, og dernæst 'toggle' mellem de to størrelser og placeringer.

Jeg har selv benyttet metoden i et par af mine projekter, og det virker ganske fint Smile

Husk, at trykke på [Tak], hvis du kan lide et indlæg.
Husk, at trykke på [Accepteret Svar], hvis du kan bruge et løsningsforslag.
Til top
AFH Se dropdown
Forum Begynder
Forum Begynder


Medlem: 08.Apr.2014
Land: Danmark
Status: Offline
Point: 11
Direkte link til dette indlæg Sendt: 01.Maj.2014 kl. 10:52
Hej igen,

Hvis jeg har et andet ark åbent, så skriver mit program desværre til dette ark.

Jeg bruger følgende kode til at skrive til mine celler fra userformen:

ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Select

Hvordan får jeg flettet denne formel ind i overstående?:

Workbooks(Tidsregistrering).Worksheets(Ark1) (Hvis den overhovedet er rigtig ;o))
Til top
EXCELGAARD Se dropdown
Platin bruger
Platin bruger


Medlem: 27.Dec.2012
Land: Denmark
Status: Offline
Point: 5417
Direkte link til dette indlæg Sendt: 01.Maj.2014 kl. 11:22
Hvis du ønsker, at vælge cellen (.Select), skal du først aktiverer regnearksfilen og dernæst fanebladet - og, så skal du huske, at sætte "anførselstegn" omkring dine navne.

Hvis dine navne er, som du selv har skrevet, bliver det noget i retning af:
Workbooks("Tidsregistrering").Activate
Worksheets("Ark1").Select
Cells(Rows.Count,1).End(xlUp).Select

Husk, at trykke på [Tak], hvis du kan lide et indlæg.
Husk, at trykke på [Accepteret Svar], hvis du kan bruge et løsningsforslag.
Til top
AFH Se dropdown
Forum Begynder
Forum Begynder


Medlem: 08.Apr.2014
Land: Danmark
Status: Offline
Point: 11
Direkte link til dette indlæg Sendt: 01.Maj.2014 kl. 12:19
Hej Excelgaard,

Endnu engang tak for hjælpen.
Linien Cells(Rows.Count,1).End(xlUp).Select sørge for at der bliver skrevet i det første ledige felt i kolonne A, Kan man ændre det til at den først skal starte på linie 4?

På forhånd tak.
Til top
 Besvar Besvar

Skift forum Forum tilladelser Se dropdown

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