Haaland Skrevet 29. januar 2003 Skrevet 29. januar 2003 Eg held på med ein Excel-makro, som skal gjera dette: 1. Sjekka om det står noko i ei celle 2a. Viss det gjer det: hoppe til 3 2b. Viss det ikkje gjer det: skjula kolonna denne cella står i, deretter gå vidare til 3. 3. Gå vidare og sjekka ei anna celle. Foreløpig har eg kome fram til dette: Function Sjekkslett() For xxx = 4 To 83 If Cells(3, xxx) = "0" Then ?? Selection.EntireColumn.Hidden = True End If Next xxx End Function Eg trur alt er rett, utanom der det står to spørsmålsteikn. Kva kan eg skriva der for å få Excel til å i neste omgang skjula rett kolonne? Eg har prøvd litt forskjellig, og har mellom anna fått han til å skjula heile reknearket, noko som kanskje ikkje er heilt optimalt... Til opplysing bør det kanskje nemnast at dette er mitt første "prosjekt" som inneber å skriva makroar... :wink:
MagneH Skrevet 30. januar 2003 Skrevet 30. januar 2003 Selection-objektet viser til de cellene som er valgt på forhånd. Enten så må de velges med: Range(Cells(3, xxx)).Select eller det som er bedre, jobb alltid med Range-objektet: Range(Cells(3, xxx)).EntireColumn.Hidden = True Da forandrer du aldri på Selection-objektet
Haaland Skrevet 3. februar 2003 Forfatter Skrevet 3. februar 2003 Tusen takk, no har eg fått til den! Men, eg har ein makro til eg skulle hatt litt hjelp til. Eg vil "overvaka" ei celle i eit rekneark, som i utgangspunktet er tom. Når brukaren skriv noko i denne cella, skal det setjast inn ei ny linje under den cella som blir overvaka. Den delen av makroen som set inn ei ny linje har eg fått til på eit vis, men eg klarer ikkje å finna ut korleis eg kan "overvaka" ei celle? Eg har søkt på Google fleire gonger, men eg finn ingenting...
MagneH Skrevet 4. februar 2003 Skrevet 4. februar 2003 Det er to hendelser Change og SheetChange du kan bruke, men du må i tillegg teste på hvor endringen foretas. Les mer om bruk av hendelser i hjelpefila.
pumpy Skrevet 4. februar 2003 Skrevet 4. februar 2003 for å sjekke endringer i en spesifikk celle: Private Sub Worksheet_Change(ByVal Target As Range) If Cells(1, 1) <> "" Then Cells(2, 1) = "HVA I HULESTE..." End If End Sub Variabelen 'Target' gir deg verdien cellen ble satt til
MagneH Skrevet 6. februar 2003 Skrevet 6. februar 2003 Dette er ikke helt riktig. Target er et range-objekt, og default egenskap er Value. Dessuten kan endringen være fra 'X' til 'Y'. Men Target.Row og Target.Column gir deg rad og kolonne der endringen skjedde.
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå