/
Forside
/
Teknologi
/
Udvikling
/
VB/Basic
/
Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn
*
Kodeord
*
Husk mig
Brugerservice
Kom godt i gang
Bliv medlem
Seneste indlæg
Find en bruger
Stil et spørgsmål
Skriv et tip
Fortæl en ven
Pointsystemet
Kontakt Kandu.dk
Emnevisning
Kategorier
Alfabetisk
Karriere
Interesser
Teknologi
Reklame
Top 10 brugere
VB/Basic
#
Navn
Point
1
berpox
2425
2
pete
1435
3
CADmageren
1251
4
gibson
1230
5
Phylock
887
6
gandalf
836
7
AntonV
790
8
strarup
750
9
Benjamin...
700
10
tom.kise
610
Hjælp til kode.
Fra :
Kristian
Dato :
13-02-05 03:26
Jeg har denne kode der skal tjekke tallene i 20 forskellige celler næste
celle E11 E12 osv
If Range("E10").Value <= 10 Then
Range("E10").Select
Selection.Font.ColorIndex = 3
End If
If Range("E10").Value > 10 Then
Range("E10").Select
Selection.Font.ColorIndex = 4
Kan jeg ikke på en eller andet måde undgå at skrive koden 20gange, ved at
gøre sådan en den selv sætter værdien E10 op med 1, dog kun indtil alle
felterene er kørt igennem ?
skriv gerne den præcise kode
Mange tak!
Reidar Kind (
14-02-2005
)
Kommentar
Fra :
Reidar Kind
Dato :
14-02-05 17:30
> If Range("E10").Value <= 10 Then
> Range("E10").Select
> Selection.Font.ColorIndex = 3
> End If
> If Range("E10").Value > 10 Then
> Range("E10").Select
> Selection.Font.ColorIndex = 4
>
>
> Kan jeg ikke på en eller andet måde undgå at skrive koden 20gange, ved at
> gøre sådan en den selv sætter værdien E10 op med 1, dog kun indtil alle
> felterene er kørt igennem ?
>
> skriv gerne den præcise kode
>
Har ikke testet koden, men du skjønner det sikkert hvis det skulle være noen
feil:
Dim Felt as Range
Dim Feltliste as Range
Set Feltliste = Range("E10:E20")
For Each Felt In Feltliste
Felt.Select
If Felt.Value <= 10 Then
Selection.Font.ColorIndex = 3
Else If Felt.Value > 10 Then
Selection.Font.ColorIndex = 4
endif
Next Felt
mvh
Reidar
Reidar Kind (
14-02-2005
)
Kommentar
Fra :
Reidar Kind
Dato :
14-02-05 17:37
"Reidar Kind" <reidar@kind.no> wrote in message
news:Rl4Qd.1494$4c.186434@juliett.dax.net...
>> If Range("E10").Value <= 10 Then
>> Range("E10").Select
>> Selection.Font.ColorIndex = 3
>> End If
>> If Range("E10").Value > 10 Then
>> Range("E10").Select
>> Selection.Font.ColorIndex = 4
>>
>>
>> Kan jeg ikke på en eller andet måde undgå at skrive koden 20gange, ved at
>> gøre sådan en den selv sætter værdien E10 op med 1, dog kun indtil alle
>> felterene er kørt igennem ?
>>
>> skriv gerne den præcise kode
>>
> Har ikke testet koden, men du skjønner det sikkert hvis det skulle være
> noen feil:
>
> Dim Felt as Range
> Dim Feltliste as Range
> Set Feltliste = Range("E10:E20")
>
> For Each Felt In Feltliste
> Felt.Select
> If Felt.Value <= 10 Then
> Selection.Font.ColorIndex = 3
> Else If Felt.Value > 10 Then
> Selection.Font.ColorIndex = 4
> endif
> Next Felt
>
Forøvrig bør du likegjerne kun bruke
Felt.Font.ColorIndex = 3
i stedet for
Felt.Select
Selection.Font.ColorIndex=3
....
I tillegg er det ikke gjort noen test på om det er tall eller tekst som
ligger i feltene.. Det bør vel kanskje også gjøres. Det gir jo liten mening
å teste om f.eks "En lang tekst som beskriver et eller annet" > 10... Hvis
du skjønner.
Bare noen tanker, men det var jo selve loop-en du lurte på.
-Reidar
Søg
Alle emner
Teknologi
Udvikling
VB/Basic
Indstillinger
Spørgsmål
Tips
Usenet
Reklame
Statistik
Spørgsmål :
177580
Tips :
31968
Nyheder :
719565
Indlæg :
6409079
Brugere :
218888
Månedens bedste
Årets bedste
Sidste års bedste
Copyright © 2000-2024 kandu.dk. Alle rettigheder forbeholdes.