Sub caricaDDT()
'dichiaro le variabili
Dim protocollo As Long
Dim ddt As Long
Dim caricaDDT As Worksheet
Dim foglio1 As Worksheet
Dim ncolonne As Integer
Dim nrighe As Integer
Dim incremento As Integer
'rinomino i fogli di lavoro'
Set ddt = ThisWorkbook.Sheets("D.D.T. )
Set caricaDDT = ThisWorkbook.Sheets("Carica D.D.T.")
'mi sposto nel foglio carica DDT'
caricaDDT.Select
'dichiaro che la variabile protocollo prenderà il valore della cella 8C'
protocollo = Cells(8, "C").Value
Cells(8, "C").Select
Selection.Copy
'inserisco i controlli per la cella 8C'
If protocollo = 0 Then
MsgBox ("inserire il numero protocollo della fattura vetrauto ")
Application.CutCopyMode = False
Cells(8, "C").Select
Exit Sub
End If
'mi sposto nel foglio DDT'
DDT.Select
'mi inserisco nella cella A1 e scendo fino all'ultima cella inserita'
Range("A1").Select
Selection.End(xlDown).Select
'scendo di una casella e copio il valore all'interno della cella
ActiveCell.Offset(1, 0).Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
'vado nel foglio carica DDT'
caricaDDT.Select
'dichiaro che la variabile protocollo prenderà il valore della cella 8C'
ddt = Cells(16, "C").Value
'controllo che la casella non sia vuota'
If ddt = 0 Then
MsgBox (" inserire i ddt di vetrauto")
Application.CutCopyMode = False
Cells(16, "C").Select
Exit Sub
End If
On Error Resume Next
ncolonne = Range("C16", Range("C16").End(xlDown)).Cells.Count
If errnumber = 6 Then
ncolonne = 1
End If
ncolonne = Range("C16", Range("C16").End(xlDown)).Cells.Count
nrighe = 1
incremento = 16
'ciclo for per inserire i dati
For i = 1 To ncolonne
Cells(incremento, "C").Select
If ddt = 0 Then
MsgBox (" inserire i ddt di vetrauto")
Application.CutCopyMode = False
Cells(b, "C").Select
Exit Sub
End If
Selection.Copy
DDT.Select
Range("A1").Select
Selection.End(xlDown).Select
ActiveCell.Offset(0, nrighe).Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
nrighe = nrighe + 1
incremento = incremento + 1
caricaDDT.Select
Next
Range("C8").Select
Application.CutCopyMode = False
Selection.ClearContents
ActiveWindow.SmallScroll Down:=-24
Range("C16").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.ClearContents
Range("C8").Select
End Sub |