› Excel e gli applicativi Microsoft Office › Ordinamento con celle unite
Stai vedendo 4 articoli - dal 1 a 4 (di 4 totali)
-
AutoreArticoli
-
Buona sera a tutti,ho creato un Excel, dove inserisco dei valori, nome/ data di nascita/… come si può vedere nell'esempio le prime caselle sono unite… perchè esempio la colonna E2-4 appartiene al signore marco (unito B2-4).Se ad esempio metto in ordine alfabetico per nome dovrebbe riconoscere che deve ritenere le righe da 2-4 come se fosse un unica riga appartenente alla stessa persona.Ce un modo per ordinare in questo modo? bloccando le righe? dicendo che quelle righe sono da ritenere una sola?ringrazio tutti per l'aiuto, salutiMarco
Allegati:
You must be logged in to view attached files.CiaoProva con questa macroSub ordina()
ur = Cells.Find("*", [A1], , , xlByRows, xlPrevious).Row + 1
With ActiveSheet.UsedRange
For Each cell In .Cells
With cell
a = .MergeArea.Cells(1, 1).Value
If .MergeCells = True Then
n = .MergeArea.Cells.Rows.Count
.UnMerge
For i = .Row To .Row + n - 1
Cells(i, cell.Column).Value = a
Next i
End If
a = ""
End With
Next cell
End With'ordina per nome
Range("A1:H" & ur).Select
Selection.Sort Key1:=Range("B1"), Order1:=xlAscending, Header:=xlYes, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
'ripristina celle unite
Application.DisplayAlerts = False
b = 0
For i = 2 To ur - 1
If Cells(i, 2) = Cells(i + 1, 2) Then
b = b + 1
ElseIf Cells(i, 2) <> Cells(i + 1, 2) Then
Range(Cells(i - b, 2), Cells(i, 2)).Merge
Range(Cells(i - b, 1), Cells(i, 1)).Merge
Range(Cells(i - b, 3), Cells(i, 3)).Merge
Range(Cells(i - b, 4), Cells(i, 4)).Merge
b = 0
End If
Next i
Application.DisplayAlerts = True
End SubFai sapere. Ciao,Mario-
Questa risposta è stata modificata 8 anni fa da
Marius44.
Buona sera mario.Scusami per il ritardo, ma ero in vacanza.FunzionaGrazie milleMarius44 dove va inserita la macro? grazie
-
Questa risposta è stata modificata 8 anni fa da
-
AutoreArticoli
Stai vedendo 4 articoli - dal 1 a 4 (di 4 totali)
