Una famiglia di software per fogli di calcolo Microsoft con strumenti per l'analisi, la creazione di grafici e la comunicazione dei dati.
Ciao Cristian,
Const sColonne_da_Copiare As String = "A:AV" '<<=== Modifica
Const sFoglio_Destinazione As String = "Foglio3" '<<=== Modifica
Il foglio 3 lo richiamerò io come mi servirà in seguito
Ho scaricato il tuo file e credo che il problema principale sia che sul foglio Inserimento dati siano presenti righe nascoste.
Per superare il problema, nel modulo di codice del foglio Inserimento datiincolla il seguente codice:
'=========>>
Option Explicit
'--------->>
Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
Dim destSH As Worksheet
Dim srcRng As Range, destRng As Range
Dim LRow As Long
Const sColonne_da_Copiare As String = "A:AV" '<<=== Modifica
Const sFoglio_Destinazione As String = "Foglio3" '<<=== Modifica
Set srcRng = Intersect(ActiveCell.EntireRow, _
Me.Columns(sColonne_da_Copiare))
Set destSH = ThisWorkbook.Sheets(sFoglio_Destinazione)
With destSH
Debug.Print Target.Range.Cells.Count
LRow = LastRow(destSH, .Columns(sColonne_da_Copiare))
Set destRng = .Range("A" & LRow + 1)
End With
srcRng.Copy Destination:=destRng
End Sub
'<<=========
In un modulo standard, incolla:
'=========>>
Option Explicit
'--------->>
Public Function LastRow(SH As Worksheet, _
Optional Rng As Range, _
Optional minRow As Long = 1)
If Rng Is Nothing Then
Set Rng = SH.Cells
End If
On Error Resume Next
LastRow = Rng.Find(What:="*", _
after:=Rng.Cells(1), _
Lookat:=xlPart, _
LookIn:=xlFormulas, _
SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious, _
MatchCase:=False).Row
On Error GoTo 0
If LastRow < minRow Then
LastRow = minRow
End If
End Function
'<<=========
===
Regards,
Norman