Avatar billede thonis Nybegynder
11. januar 2007 - 11:40 Der er 10 kommentarer og
1 løsning

makro til at nulstille data i ark

Jeg har en række ark med en lang række data, som jeg gerne vil have at man automatisk kan nulstille. Jeg laver selv en knap til at starte makroen med bagefter. Jeg ved ikke om jeg skal oplyse hvilke celler og ark det drejer sig om, for at ikke hele arket bliver nulstillet.
Ark1 drejer det sig om C13-21 og C26, C28, C30, C35 og E15.
                      F13-21 og F26, F28, F30 og F30 og H15
samt                  H2-H7

Ark2:                  C20, C21, C23, C29, C30, C35 og E15.
                      F20, F21, F23, F29, F30, F35 og H15.

Ark3:                  C20-C23, C26, C29, C30, C35 og E15.
                      F20-F23, F26, F29, F30, F35 og H15.
Avatar billede supertekst Ekspert
11. januar 2007 - 13:18 #1
Er det noget til fælles for alle disse celler med hensyn til formattering/formel eller lign?
Avatar billede thonis Nybegynder
11. januar 2007 - 13:30 #2
Der er ingen formler i nogen af de nævnte celler. Celle C13 og F13 i ark 1 er rullelister, jeg ved ikke om man kan nulstille disse, så de er blanke. Resten af cellerne har forskellig formatering, bl.a. m3, kr, hours osv. Det jeg gerne vil have er bare at der står nul i alle de nævnte celler.
Avatar billede supertekst Ekspert
11. januar 2007 - 13:56 #3
Prøv dette - koden har jeg i ThisWorkbook i VBA:
Sub sletUdvalgte()
Const ark1c = "C13:C21,C26,C28,C30,C35,E15,F13:F21,F26,F28,F30,F30,H15,H2:H7"
Const ark2c = "C20,C21,C23,C29,C30,C35,E15,F20,F21,F23,F29,F30,F35,H15"
Const ark3c = "C20:C23,C26,C29,C30,C35,E15,F20:F23,F26,F29,F30,F35,H15"

    Worksheets(1).Activate
    Range(ark1c).Select
    Selection.ClearContents

    Worksheets(2).Activate
    Range(ark2c).Select
    Selection.ClearContents
   
    Worksheets(3).Activate
    Range(ark3c).Select
    Selection.ClearContents
End Sub
Avatar billede thonis Nybegynder
11. januar 2007 - 15:07 #4
Det virker fint nok, men jeg vil gerne have at i stedet for det hele bliver slettet, skal der stå 0, men formatering skal bevares, altså hvis det er i kr så skal der stå o kr, og hvis det m3 så skal der stå 0 m3. Mht. de to rullelister i C13 og F13 i ark1, vil jeg gerne have at de i disse felter kommer til at stå et "-".
Avatar billede supertekst Ekspert
11. januar 2007 - 15:52 #5
Vi prøver igen:
Sub sletUdvalgte()
Const ark1c = "C14:C21,C26,C28,C30,C35,E15,F14:F21,F26,F28,F30,F30,H15,H2:H7"
Const ark1r = "C13,F13"
Const ark2c = "C20,C21,C23,C29,C30,C35,E15,F20,F21,F23,F29,F30,F35,H15"
Const ark3c = "C20:C23,C26,C29,C30,C35,E15,F20:F23,F26,F29,F30,F35,H15"

    nulstil 1, ark1c, 0
    nulstil 1, ark1r, "-"
    nulstil 2, ark2c, 0
    nulstil 3, ark3c, 0
End Sub
Private Sub nulstil(ArkNr, område, tegn)
    Worksheets(ArkNr).Activate
    Range(område).Select
    Selection.Value = tegn
End Sub
Avatar billede thonis Nybegynder
11. januar 2007 - 16:03 #6
Sorry, glemte at sige at der også er rullelister i Ark2 C21 og F21 samt ark3 C21, F21, C23 og F23. I disse skal der også stå "-" i stedet for 0. I H2-H7 i ark1 skal være blanke i stedet for 0.
Avatar billede supertekst Ekspert
11. januar 2007 - 16:09 #7
Det tror jeg godt du selv kan finde ud af - når du ser hvordan jeg har løste disse specialiteter i ovennævnte version. Prøv
Avatar billede thonis Nybegynder
11. januar 2007 - 18:37 #8
lige et sidste spørgsmål. Jeg har fået det til at virke, jeg bare ikke lige hvordan jeg skal få H2-H7 i ark1 blanke.

Koden ser indtil videre sådan ud:

Sub sletUdvalgte()
Const ark1c = "C14:C22,C26,C28,C30,C35,E15,F14:F22,F26,F28,F30,F35,H15"
Const ark1r = "C13,F13"
Const ark2c = "C20,C21,C23,C29,C30,C35,E15,F20,F21,F23,F29,F30,F35,H15"
Const ark2r = "C21,F21"
Const ark3c = "C20:C23,C26,C29,C30,C35,E15,F20:F23,F26,F29,F30,F35,H15"
Const ark3r = "C21,F21,C23,F23"

    nulstil 1, ark1c, 0
    nulstil 1, ark1r, "-"
    nulstil 2, ark2c, 0
    nulstil 2, ark2r, "-"
    nulstil 3, ark3c, 0
    nulstil 3, ark3r, "-"
End Sub
Private Sub nulstil(ArkNr, område, tegn)
    Worksheets(ArkNr).Activate
    Range(område).Select
    Selection.Value = tegn
End Sub
Avatar billede supertekst Ekspert
11. januar 2007 - 20:27 #9
Sub sletUdvalgte()
Const ark1c = "C14:C22,C26,C28,C30,C35,E15,F14:F22,F26,F28,F30,F35,H15"
Const ark1r = "C13,F13"
const ark1b = "H2:H7"
Const ark2c = "C20,C21,C23,C29,C30,C35,E15,F20,F21,F23,F29,F30,F35,H15"
Const ark2r = "C21,F21"
Const ark3c = "C20:C23,C26,C29,C30,C35,E15,F20:F23,F26,F29,F30,F35,H15"
Const ark3r = "C21,F21,C23,F23"

    nulstil 1, ark1c, 0
    nulstil 1, ark1r, "-"
    nulstil 1. ark1b, " "      'eller "" henholds blank= " " tom = ""
    nulstil 2, ark2c, 0
    nulstil 2, ark2r, "-"
    nulstil 3, ark3c, 0
    nulstil 3, ark3r, "-"
End Sub
Private Sub nulstil(ArkNr, område, tegn)
    Worksheets(ArkNr).Activate
    Range(område).Select
    Selection.Value = tegn
End Sub
Avatar billede thonis Nybegynder
11. januar 2007 - 23:15 #10
fint så virker det hele, forresten hvad betyder det bogstav som står efer ark1 osv. f.eks. nulstil 1, ark1c, 0.
Avatar billede supertekst Ekspert
12. januar 2007 - 09:11 #11
Godt - det er kun for at adskille de enkelte områder, der skal "nulstilles" i samme ark - noget skulle de jo hedde.
c = celle
r = rulleliste
b = blanke
- men det har ingen funktionel betydning - andet end entydigheden.
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