Re: come mai excel ?.......

From: Danguard <danguard_robot_at_hotmail.com>
Date: Fri, 15 Oct 2004 15:19:13 GMT

In article <0WMbd.137698$35.6735799_at_news4.tin.it>, fistal2_at_virgilio.it
says...

> intanto ringrazio a tutti quelli che mi hanno risposto, solo alcuni hanno
> dedotto bene ci� che volevo
>
> per cui ripropongo il quesito aggiungendo informazioni:
>
> [CUT]

....OK, credo di essere tra quelli che hanno capito.

Non ho mai affrontato questo problema, ma, poiche' mi incuriosiva, ho
studiato un po'...

Non so se c'e' una soluzione migliore di questa (probabilmente si'),
comunque ti riporto in seguito quanto ho prodotto.

Dovrebbe bastarti una funzioncina scritta in VBA, per fare il calcolo di
un AND "bit-a-bit" (anch'io non sono riuscito a trovarla tra le funzioni
di Excel; la funzione "E" esegue infatti un and logico, non bit-a-bit).

<CODE>

'=========================================================
' NOME: BitWiseAnd
' DESC: AND bit-a-bit tra due interi
'=========================================================
Function BitWiseAnd(a As Integer, b As Integer) As Integer
    ' And bit a bit
    BitWiseAnd = a And b
End Function

</CODE>

Usa altri due ingredienti (queste sono funzioni predefinite di Excel):

- CODICE() : ti ritorna il codice di un carattere specificato come
parametro in input;

- CODICE.CARATT() : e' la "funzione inversa" della precedente, in quanto
ti ritorna il carattere, il cui codice e' specificato in input.

A questo punto, ti basta combinare questi tre ingredienti.

1. Leggere il codice dei due caratteri "operandi" con CODICE
2. Mettere tali valori in AND con la funzione BitWiseAnd
3. Trasformare il risultato in carattere, con la funzione CODICE.CARATT

Non so se il manifesto di questo NG consente di inviare in allegato un
foglio di Excel di prova, quindi, per sicurezza, non lo invio.
(Comunque, se vuoi, posso spedirtelo per e-mail.)

Spero di essere stato utile.
Ciao
Dan
Received on Fri Oct 15 2004 - 17:19:13 CEST

This archive was generated by hypermail 2.3.0 : Fri Nov 08 2024 - 05:10:23 CET