Avatar billede skaanning Seniormester
01. september 2009 - 09:35 Der er 6 kommentarer og
1 løsning

clear cells

Er der en der kan hjælpe mig med et program der kan afsøge alle sheets i et regne ark for et bestent tal og slette alle data i disse celler der indeholder dettte tal.
Avatar billede tjp Mester
01. september 2009 - 09:54 #1
Kan det her bruges (optog en Søg og erstat-makro):

Sub FjernAlle(SøgeStreng)
    Cells.Replace What:=SøgeStreng, Replacement:="", LookAt:=xlWhole, SearchOrder _
        :=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
End Sub
Avatar billede kedde65 Praktikant
01. september 2009 - 10:33 #2
Denne her kan gøre det du efterspørger

Sub FjernAlle()
    Dim søgetekst As String
    Dim sht As Worksheet
    søgetekst = "100"
    For Each sht In Sheets
        Cells.Replace What:=søgetekst, Replacement:="70", LookAt:=xlWhole, SearchOrder _
            :=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
    Next
End Sub

Stor hilsen
Christian Kjær
Avatar billede skaanning Seniormester
01. september 2009 - 10:55 #3
Jeg har ikke kunnet få det til at virke, det jeg skal er at det skal indsættes i et program som kalder et andet regneark og rydder alle celler i der kun står "0" i.
jeg havde prøvet at sætte det ind i en function men det virkede ikke.
se her
Private Function hentServerDrevFil()
    hentServerDrevFil = sysArk.Range("B1")
   
    Cells.Replace What:="0", Replacement:="", LookAt:=xlWhole, SearchOrder _
        :=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

End Function
Avatar billede skaanning Seniormester
01. september 2009 - 12:56 #4
hej kedde65 det du skriver virker rigtig nok med forskellige tal men det virker ikke med 0 eller 0,0 kan du give mig en forklaring på det
Avatar billede kedde65 Praktikant
01. september 2009 - 13:05 #5
det virker perfekt hos mig, også med 0 og 0,0

Jeg har lavet koden om så den åbner en ekstern fil og erstatter alle 0'er med ingenting.

Sub FjernAlle()
    Dim søgetekst As String
    Dim wrk As Workbook
    Dim sht As Worksheet
    søgetekst = "0"
    Set wrk = Application.Workbooks.Open("c:\data.xlsx")
    For Each sht In wrk.Sheets
        sht.Cells.Replace What:=søgetekst, Replacement:="", LookAt:=xlWhole, SearchOrder _
            :=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
    Next
   
    wrk.Close True
   
End Sub

Stor hilsen
Christian Kjær
Avatar billede skaanning Seniormester
01. september 2009 - 14:47 #6
hej kedde65 du har fulstændig ret, jeg ved ikke hvad jeg har gjort forkert for nu virker det så tak.
smider du et svar så du kan få dine point.
Hilsen
Peter Skaanning
Avatar billede kedde65 Praktikant
01. september 2009 - 14:51 #7
Det lyder godt - super det kom til at virke.

Stor hilsen
Christian Kjær
ck@Officekonsulenterne.dk
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
Kurser inden for grundlæggende programmering

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