Print side | Luk vindue

Genkender ikke tal

Udskrevet fra: Dansk Regneark Forum
Kategori: Hjælp til regneark.
Forum navn: Makro og VBA
Forum beskrivelse: Hjælp til Makroer og VBA-programmering
Web-adresse: https://forum.excel-regneark.dk/forum_posts.asp?TID=380
Udskrevet den: 05.Dec.2024 kl. 03:44


Emne: Genkender ikke tal
Besked fra: uffesch
Emne: Genkender ikke tal
Posteringsdato: 28.Jun.2011 kl. 21:45
Hej
 
I mit Excel ark (2003) bliver der indsat en lang række tal i kolonne H, men Excel genkender ikke tallene som tal (tallene er venstrestillede selv om de kopieres højrestillede og fra et ark hvor Excel opfatter dem som tal). Jeg kan løse problemet ved at multiplicere alle cellerne i kolonne H med 1 ved hjælp af paste special, Excel genkender nu tallene som tal.
 
Mit problem er, at når jeg indspiller ovennævnte manøvre i en makro, så genkender Excel stadig ikke tallene som tal. Hvordan kan man lave en makro der virker??
 
Mvh Uffesch



Svar:
Besked fra: Allan
Posteringsdato: 29.Jun.2011 kl. 08:32
Hej Uffesch,
 
Marker de celler som du vil konvertere fra tekst til tal og prøv denne kode.
 
Sub Tekst_Til_Tal()
For Each c In Selection.Cells
    If c <> "" Then c.Value = c.Value * 1
Next c
End Sub
 
Virker den hos dig?
 
//Allan


Besked fra: uffesch
Posteringsdato: 29.Jun.2011 kl. 15:05
Hej Allan
 
Ja tak, den virker. Du har lige gjort min dag temmelig meget bedre.
 
Mange tak for hjælpen.
 
Mvh
 
Uffesch
 
 


Besked fra: Allan
Posteringsdato: 29.Jun.2011 kl. 15:26
Hej Uffesch,
 
Det var da dejligt LOL
Du skal i hvert fald have velbekomme, og tak for din tilbagemelding.
 
//Allan


Besked fra: Bookkeeper
Posteringsdato: 11.Aug.2011 kl. 11:11
Hej Allan
 
Jeg "stjal" lige macroen, da den så ud til, at løse et af mine problemer. Smile
Jeg løb dog ind i et nyt problem, da macroen mødte værdien .25 uden foranstillet nul. Stern Smile
 
Du skulle vel ikke have et godt bud på, hvordan det problem skal løses?Big smile
 
M.v.h.
Tommy


Besked fra: Allan
Posteringsdato: 11.Aug.2011 kl. 12:44
Hej Tommy,
 
Denne udgave fjerner tegnet længst mod venstre, hvis det ikke er et tal.
Derefter konverterer den resten af cellens indhold til et tal.
 
Sub Tekst_Til_Tal()
For Each c In Selection.Cells
    If c <> "" Then
        If IsNumeric(Left(c.Value, 1)) Then
            c.Value = c.Value * 1
        Else
            c.Value = Mid(c.Value, 2, Len(c) - 1)
        End If
    End If
Next c
End Sub
 
//Allan 


Besked fra: Bookkeeper
Posteringsdato: 11.Aug.2011 kl. 13:29
Hej Allan
 
Den laver desværre .25 om til 25 og ikke til 0,25 som er den værdi jeg skal bruge. Cry
 
Jeg rettede lidt i den og kom frem til:
 
Sub Tekst_Til_Tal()
For Each c In Selection.Cells
    If c <> "" Then
        If IsNumeric(Left(c.Value, 1)) Then
            c.Value = c.Value / 100
        Else
            c.Value = Mid(c.Value, 2, Len(c) - 1) / 100
        End If
    End If
Next c
End Sub
 
Så virker den hos mig.Big smile
 
Du skal have mange tak for hjælpen. Star
 
M.v.h.
Tommy



Print side | Luk vindue