Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    Cella in Excel per codici fiscali.

    Salve a tutti, ho un problema.
    Non riesco a trovare un formato celle per i Codici fiscali, devo fare tipo:
    xxxxxx11x11x111x 16 caratteri (numeri e lettere) e dovrei determinarli...
    Se si dovesse scrivere x1xxxxx1xx1x1x dovrà dare errore o che non si potrà fare quel formato.
    A me servirebbe che si possa impostare una cella "alfanumerica" con la modalità e quantità di lettere e cifre citate sopra.
    Spero che si possa fare.
    Vi ringrazio

  2. #2
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,923
    Devi ricorrerre alle espressioni regolari per validare quel particolare formato. Quindi dovrai per prima cosa aprire l'editor vba, dal menu strumenti => riferimenti => spuntare la voce "microsoft vbscript regular expression x.x".

    A questo punto fai doppio click sul foglio cui vuoi applicare la validazione e aggiungi, sempre nell'editor vba il seguente codice:

    codice:
    Option Explicit
    Private Sub Worksheet_Change(ByVal Target As Range)
    Dim re As Object
    Set re = CreateObject("vbscript.regexp")
    
    If Not Intersect(Target, Range("A1:A10")) Is Nothing Then
    
    With re
            .IgnoreCase = True
            .Pattern = "^[A-Z]{6}[0-9]{2}[A-Z]{1}[0-9]{2}[A-Z]{1}[0-9]{3}[A-Z]{1}$"
        
        If Not re.Test(Target) And Not IsEmpty(Target) Then
            MsgBox "Formato CF errato"
            Target.Select
        Else
            Target = UCase(Target)
        End If
    End With
    
    End If
    End Sub
    Nel mio esempio le celle soggette alla validazione saranno solo quelle nel range a1:a10, tu modificalo secondo le tue esigenze.

    Ho anche impostato che la validazione non sia case sensitive ma renda tutto il cf maiuscolo nel caso questo sia corretto. Anche su quello vedi tu se va bene così oppure no.

  3. #3
    NICOLA75SS grazie.
    Ma volevo chiederti di farmi da guida passo a passo...come fare questo e quello...>.< non ho capito bene. =|

  4. #4
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,923
    Devi andare su strumenti => macro => visual basic editor.

    Una volta avuto accesso all'editor vba menù strumenti => riferimenti => spuntare la voce "microsoft vbscript regular expression x.x".

    Sul lato sinistro dell'editor vba c'è la sezione vbaproject dove troverai l'elenco dei fogli del tuo file di excel. Fai doppio click sul foglio su cui devi validare i cf e incolli quanto ti ho scritto.

  5. #5
    Dopo averlo incollato cosa dovrò fare? E il range come lo dovrei impostare? La scritta si troverà a BC 7 perchè 7B è unito con la C.

  6. #6
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,923
    Dopo che hai incollato il testo provi a digitare dei codici fiscali nell'intervallo a1:a10 del foglio e testi il funzionamento di quanto ti ho scritto. Se il range non ti va bene lo modifichi in questa riga

    If Not Intersect(Target, Range("A1:A10")) Is Nothing Then

    I codici fiscali li devi inserire in una cella singola, non usare celle unite che creano problemi.

  7. #7
    Grazie mille, sei un genio! Come ti do i punti di reputazione?


    PS: guarda l'altro post

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.