Creare tabella di dimensioni dinamiche

Versione Completa   Stampa   Cerca   Utenti   Iscriviti     Condividi : FacebookTwitter
cext104
00martedì 12 marzo 2024 21:24
Buonasera a tutti,
Avrei necessità di creare una tabella di dimensioni dinamiche in base al valore contenuto in una cella, mi spiego meglio:
Supponiamo che nella cella A1 ci sia il valore n, avrei bisogno di creare n+1 righe per un numero fissato di colonne, mettiamo ad esempio m.
Esempio:
m (valore fissato) = 4
A1 = 7
Avrei bisogno di una tabella di dimensione n+1 (8) x 4. C'è modo di poterlo fare? E magari che si autoformatti mettendo i bordi?

Ringrazio in anticipo chi potrà aiutarmi.
Buona serata.
alfrimpa
00martedì 12 marzo 2024 23:06
Allega un file di esempio con inserito a mano il risultato che vuoi ottenere.
cext104
00martedì 12 marzo 2024 23:12
Ciao Alfredo,
Ti allego un file di esempio, spero si capisca.

federico460
00mercoledì 13 marzo 2024 09:11
ciao

in A1 il numero colonne....se è un fisso scrivi il numero al posto della cella
in A6 il numero righe

la macro funziona sulla cella attiva

in pratica selezioni la cella dove vuoi creare la tabella e poi lanci la macro

Sub CreaTabella()
Dim Righetotali, Colonnetotali As Integer

Righetotali = Range("A6").Value + ActiveCell.Row
Colonnetotali = Range("A1").Value + ActiveCell.Column - 1

Range(ActiveCell, Cells(Righetotali, Colonnetotali)).Select

Selection.Borders(xlEdgeLeft).Weight = xlMedium
Selection.Borders(xlEdgeTop).Weight = xlMedium
Selection.Borders(xlEdgeBottom).Weight = xlMedium
Selection.Borders(xlEdgeRight).Weight = xlMedium

Selection.Borders(xlInsideVertical).Weight = xlThin
Selection.Borders(xlInsideHorizontal).Weight = xlThin

End Sub



volendo si può fare al doppio click sulla cella

il problema è cancellare i bordi prima di ricreare la tabella ( se sono meno righe/colonne non varia)
ora se la tabella nel foglio è una è semplice
ma se sono varie tabelle diventa leggermente più complicato
vediamo i vbaisti cosa dicono


Questa è la versione 'lo-fi' del Forum Per visualizzare la versione completa clicca qui
Tutti gli orari sono GMT+01:00. Adesso sono le 12:33.
Copyright © 2000-2024 FFZ srl - www.freeforumzone.com