È soltanto un Pokémon con le armi o è un qualcosa di più? Vieni a parlarne su Award & Oscar!
 
Pagina precedente | 1 | Pagina successiva
Vota | Stampa | Notifica email    
Autore

Visualizzare larghezza colonna nella cella

Ultimo Aggiornamento: 27/10/2023 19:05
Post: 131
Registrato il: 24/07/2013
Città: SALERNO
Età: 52
Utente Junior
Excel LTSC 2021
OFFLINE
27/10/2023 09:03

Buongiorno a tutti,
Vorrei sapere come fare, in un foglio di lavoro, per visualizzare in riga1 la larghezza delle rispettive colonne

Esempio:
se la larghezza della colonna 'A' è di 8,43 vorrei che detto valore venisse visualizzato in Cella 'A1'
se la larghezza della colonna 'B' è di 15,29 vorrei che detto valore venisse visualizzato in Cella 'B1'
se la larghezza della colonna 'A' è di 3,00 vorrei che detto valore venisse visualizzato in Cella 'C1'
e così via,
nell'ambito di un intervallo determinato (es. A1:AZ1)

Allego file di esempio

Grazie

[Modificato da Anthony D'Acunto 27/10/2023 09:06]
Windows 10 - Excel LTSC
Post: 1.370
Registrato il: 16/08/2015
Città: CORDENONS
Età: 67
Utente Veteran
Excel 2016-32bit Win11
OFFLINE
27/10/2023 09:20

Probabilmente basta una macro così:
Option Explicit
Sub LarghezzaColonne()
    Dim x As Integer
    For x = 1 To 52
        Cells(1, x) = Columns(x).Width
    Next x
End Sub

______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto)
Post: 1.152
Registrato il: 24/06/2015
Città: CATANIA
Età: 80
Utente Veteran
Excel2019
OFFLINE
27/10/2023 09:22

Ciao
Non vorrei sbagliarmi ma ritengo possa farsi solo con VBA

Ciao,
Mario

PS - Rolando sei stato più veloce di me. Ciao.
[Modificato da Marius44 27/10/2023 09:24]
Post: 7.397
Registrato il: 14/11/2004
Utente Master
Office 2019
OFFLINE
27/10/2023 09:35

Ciao, avrei proposto la stessa Macro di Rollis che Saluto, e come ha detto Mario che Saluto, credo che con le formule non si possa fare tranne smentita.

Ciao By Sal (8-D
se ti piace la soluzione sostienici con una DONAZIONE a piacere. Grazie clicca qui
Post: 3.111
Registrato il: 10/10/2013
Città: VICENZA
Età: 69
Utente Master
365
OFFLINE
27/10/2023 10:30

ciao
DIDATTICA
con le formule si potrebbe ma arrotonda la larghezza

formule
nome
largcol
formula
=CELLA("larghezza";Foglio1!A$1)


sulla cella A1 matriciale ctrl maiuscolo invio

=largcol

da tirare a destra


meglio il VBA

altrimenti si potrebbe usare
INFO.CELLA()
ma è un caos.praticamente bisogna cambiare il sistema di protezione

[Modificato da federico460 27/10/2023 10:31]
Post: 2.410
Registrato il: 21/03/2008
Città: LOCATE VARESINO
Età: 76
Utente Veteran
2007 / 13
OFFLINE
27/10/2023 12:12

ciao

si potrebbe anche scrivere un UDF sempre salvando come macro il file
in un modulo


Option Explicit
Function Lar_col(Ncol As Long) As Variant
Lar_col = Columns(Ncol).ColumnWidth
End Function



nella cella del foglio
=Lar_col(RIF.COLONNA())
Ciao da locate
excel 2007 / 13
Post: 131
Registrato il: 24/07/2013
Città: SALERNO
Età: 52
Utente Junior
Excel LTSC 2021
OFFLINE
27/10/2023 16:20

Re:
Confermo quanto hai detto.
Prima di scrivere qui ho fatto varie ricerche sul Web e riscontrato la cosa.
Inoltre trovato sul Web una procedura con Definisci nome, ma non sono riuscito ad applicarla, essendo le formule scritte in inglese
Grazie per il tuo riscontro
Saluti
federico460, 27/10/2023 10:30:

ciao
DIDATTICA
con le formule si potrebbe ma arrotonda la larghezza

formule
nome
largcol
formula
=CELLA("larghezza";Foglio1!A$1)


sulla cella A1 matriciale ctrl maiuscolo invio

=largcol

da tirare a destra


meglio il VBA

altrimenti si potrebbe usare
INFO.CELLA()
ma è un caos.praticamente bisogna cambiare il sistema di protezione





[Modificato da Anthony D'Acunto 27/10/2023 16:21]
Windows 10 - Excel LTSC
Post: 132
Registrato il: 24/07/2013
Città: SALERNO
Età: 52
Utente Junior
Excel LTSC 2021
OFFLINE
27/10/2023 16:29

Re:
Rollis13, grazie per la tua risposta.
Ho copiato il codice che mi hai inviato in un modulo e, all'atto dell'esecuzione della macro mi restituisce, nelle celle in riga 1, il valore della relativa colonna, ma moltiplicato per 5-6 volte
Cioè:
A1 mi dà 48,00 invece che 8,43
B1 mi dà 84,00 invece che 15,29
C1 mi dà 19,50 invece che 3,00
D1 mi dà 243,75 invece che 45,71
E1 mi dà 72,25 invece che 13,14
e così via
rollis13, 27/10/2023 09:20:

Probabilmente basta una macro così:
Option Explicit
Sub LarghezzaColonne()
    Dim x As Integer
    For x = 1 To 52
        Cells(1, x) = Columns(x).Width
    Next x
End Sub




Windows 10 - Excel LTSC
Post: 133
Registrato il: 24/07/2013
Città: SALERNO
Età: 52
Utente Junior
Excel LTSC 2021
OFFLINE
27/10/2023 16:31

Re:
Locatevaresino, grazie per la tua soluzione, ma non so cosa sia un UDF
locatevaresino, 27/10/2023 12:12:

ciao

si potrebbe anche scrivere un UDF sempre salvando come macro il file
in un modulo


Option Explicit
Function Lar_col(Ncol As Long) As Variant
Lar_col = Columns(Ncol).ColumnWidth
End Function



nella cella del foglio
=Lar_col(RIF.COLONNA())




Windows 10 - Excel LTSC
Post: 7.398
Registrato il: 14/11/2004
Utente Master
Office 2019
OFFLINE
27/10/2023 16:34

Ciao Prova la mia, può darsi che inserendo il valore in una variabile il risultato sia diverso, a me da le dimensioni giuste

Sub DimCol()
Dim N, x

Rows(1).ClearContents
For x = 1 To 52
  N = Columns(x).ColumnWidth
  Cells(1, x) = N
Next x
End Sub


Ciao By Sal (8-D
se ti piace la soluzione sostienici con una DONAZIONE a piacere. Grazie clicca qui
Post: 134
Registrato il: 24/07/2013
Città: SALERNO
Età: 52
Utente Junior
Excel LTSC 2021
OFFLINE
27/10/2023 17:25

Re:
Anche a me, adesso, dà le dimensioni corrette. [SM=g27811]
Grazie mille
by sal, 27/10/2023 16:34:

Ciao Prova la mia, può darsi che inserendo il valore in una variabile il risultato sia diverso, a me da le dimensioni giuste

Sub DimCol()
Dim N, x

Rows(1).ClearContents
For x = 1 To 52
  N = Columns(x).ColumnWidth
  Cells(1, x) = N
Next x
End Sub


Ciao By Sal (8-D




Windows 10 - Excel LTSC
Post: 1.371
Registrato il: 16/08/2015
Città: CORDENONS
Età: 67
Utente Veteran
Excel 2016-32bit Win11
OFFLINE
27/10/2023 18:59

Ma ... nessuno si è accorto che questa mattina nella fretta (mi aspettavano al bar per la colazione😋) ho scritto:
"Cells(1, x) = Columns(x).Width"
invece di:
"Cells(1, x) = Columns(x).ColumnWidth"

______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto)
Post: 135
Registrato il: 24/07/2013
Città: SALERNO
Età: 52
Utente Junior
Excel LTSC 2021
OFFLINE
27/10/2023 19:05

Re:
Grazie per avermi dedicato il tuo tempo, nonostante i richiami della colazione abbiano avuto i loro giusti effetti distraenti...😋
rollis13, 27/10/2023 18:59:

Ma ... nessuno si è accorto che questa mattina nella fretta (mi aspettavano al bar per la colazione😋) ho scritto:
"Cells(1, x) = Columns(x).Width"
invece di:
"Cells(1, x) = Columns(x).ColumnWidth"




Windows 10 - Excel LTSC
Vota: 15MediaObject5,00101315MediaObject5,00613 6
Amministra Discussione: | Chiudi | Sposta | Cancella | Modifica | Notifica email Pagina precedente | 1 | Pagina successiva
Nuova Discussione
 | 
Rispondi
Cerca nel forum
Tag discussione
Discussioni Simili   [vedi tutte]
Feed | Forum | Bacheca | Album | Utenti | Cerca | Login | Registrati | Amministra
Tutti gli orari sono GMT+01:00. Adesso sono le 16:49. Versione: Stampabile | Mobile | Regolamento | Privacy
FreeForumZone [v.6.1] - Copyright © 2000-2024 FFZ srl - www.freeforumzone.com