|
| Hjælp til Excel Fra : kasper006 | Vist : 778 gange 100 point Dato : 16-11-07 08:31 |
|
Hej,
Jeg skal i mit skole projekt lave et "program" der kan bl.a. konvertere tal fra decimal tal til binære tal.
Nu skal jeg så fortælle Excel at der kun må indtastes et binært tal i cellen.
Hvordan gør jeg det
På forhånd tak
| |
| Kommentar Fra : Rosco40 |
Dato : 16-11-07 09:17 |
|
Data - Datavalidering
Heltal - minimum 0 - maximum 1
| |
| Kommentar Fra : Rosco40 |
Dato : 16-11-07 09:23 |
| | |
| Kommentar Fra : Rosco40 |
Dato : 16-11-07 09:25 |
|
I a2 skriver du DEC.TIL.BIN(A1)
For at det virker skal Analysis Toolpak være installeret. Se Funktioner > Tilføjelsesprogrammer
| |
| Kommentar Fra : Rosco40 |
Dato : 16-11-07 09:31 |
|
Men du skal lige være opmærksom på at,
Funktionen kan ikke vise tal er større end 511 og mindre end -512
| |
| Kommentar Fra : Rosco40 |
Dato : 16-11-07 09:35 |
|
Denne går til 2047
Læg den i et modul, og kald den med =Binvalue(A1)
Public Function BinValue(Værdi As Range) As String
Dim TempBin As String
Application.Volatile
Bin = Array(1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024)
Tempvalue = Abs(Værdi)
TempBin = ""
For i = 10 To 0 Step -1
If Tempvalue / Bin(i) >= 1 Then
TempBin = TempBin & "1"
Tempvalue = (Tempvalue - Bin(i))
Else
TempBin = TempBin & "0"
End If
Next
If Værdi < 0 Then
TempBin = "1" & TempBin
Else
TempBin = "0" & TempBin
End If
BinValue = TempBin
End Function
| |
| Kommentar Fra : kasper006 |
Dato : 16-11-07 09:50 |
|
Tak for svarene.
Jeg kan ikke rigtig få det til at virke, kan det være fordi jeg har den danske officepakke?
og at det hedder noget andet der?
| |
| Kommentar Fra : Rosco40 |
Dato : 16-11-07 09:58 |
|
Denne virker hos mig
=DEC.TIL.BIN(A1;10)
Ellers prøv den funktion jeg lagde. Den fungerer både i den da og En udgave.
Ellers vil jeg gerne sende dig et regnearkseksempel
| |
| Kommentar Fra : Rosco40 |
Dato : 16-11-07 10:08 |
|
For at det virker skal Analysis Toolpak være installeret. Se Funktioner > Tilføjelsesprogrammer
Har du husket det?
| |
| Kommentar Fra : kasper006 |
Dato : 16-11-07 10:21 |
|
ja, det har jeg husket.
Og det er ikke noget problem at få tallet konverteret. Det eneste problem jeg har, er at jeg skal have lavet datavalidering sådan, at hvis man taster et tal der ikke er binært, skal der komme en fejlmeddelelse
| |
| Kommentar Fra : Rosco40 |
Dato : 16-11-07 10:29 |
|
Dvs. du skal også gå den anden vej og lave Binære tal om til decimaltal.
BIN.TIL.DEC(A1)
| |
| Kommentar Fra : kasper006 |
Dato : 16-11-07 10:32 |
|
Ja, det skal også være den anden vej, jeg har fået det til at virke med BIN.TIL.DEC Men...
Jeg skal også have en fejlmeddelse hvis man taster et tal der ikke er binært
| |
| Kommentar Fra : Rosco40 |
Dato : 16-11-07 10:40 |
| | |
| Kommentar Fra : Rosco40 |
Dato : 16-11-07 10:51 |
|
Måske det her:
=HVIS(ER.FEJL(SØG(DEC.TIL.BIN(A1);DEC.TIL.BIN(A2);1));"Falsk";"Sand")
| |
| Kommentar Fra : kasper006 |
Dato : 16-11-07 10:52 |
|
Jeg kan ikke rigtig gennemskue hvad det er de gør der på: http://www.eksperten.dk/spm/706423
Hvor er det jeg skal indsætte:
Function BitwiseAnd(Topotens, Tal)
BitwiseAnd = (Topotens And Tal) = Topotens
End Function
| |
| Accepteret svar Fra : Rosco40 | Modtaget 100 point Dato : 16-11-07 11:00 |
|
Indsæt den i et modul. Alt+F11 Insert - Module
Og kald den med , =BitwiseAnd(A1;A2)
I A1 og A2 har du de to tal du vil checke på
| |
| Godkendelse af svar Fra : kasper006 |
Dato : 16-11-07 11:13 |
|
Tak for svaret Rosco40.
Jeg har ikke fået det prøvet det endnu, kigger på det med min gruppe på fredag
Håber det kommer til at virke
| |
| Du har følgende muligheder | |
|
Eftersom du ikke er logget ind i systemet, kan du ikke skrive et indlæg til dette spørgsmål.
Hvis du ikke allerede er registreret, kan du gratis blive medlem, ved at trykke på "Bliv medlem" ude i menuen.
| |
|
|