L'intervallo di righe da eliminare variarierà di volta in volta
Grazie mille a tutti
> Ciao come posso eliminare con una macro più righe contemporaneamente
> con due finistre dove indico da quale riga partire e nella seconda
> fino a quale riga arrivare??
A me piace molto il VBA, ma per il tuo problema non serve scomodarlo:
1) scrivi nell'apposita finestrella in alto a sinistra (dove appere
l'indirizzo della cella attiva) l'intervallo di righe da eliminare
(p.e.: 5:15) e premi invio;
2) click col destro sull'intestazione di riga (la colonna dove ci sono
i numeri di riga) e selezioni la voce elimina righe.
Bye!
Scossa
Dai Scossa ti ho "provocato" apposta"
La tua soluzione è sicuramente giusta veloce e funzionale ma devo in
vece approfittare della tua competenza del VBA...
Mi serve una macro perchè poi in realtà la devo legare anche ad altre
operazioni nella stessa macro!
Grazie mille
> Dai Scossa ti ho "provocato" apposta"
>
> La tua soluzione è sicuramente giusta veloce e funzionale ma devo in
> vece approfittare della tua competenza del VBA...
>
> Mi serve una macro perchè poi in realtà la devo legare anche ad altre
> operazioni nella stessa macro!
Ok, prova questa, scritta di fretta e da testare:
' Da inserire in un modulo standard
Option Explicit
'-----------------------------------------------------------
' Procedure : LevaRighe
' Author : Scossa
' Date : 30/09/2010
' Purpose : elimina intere righe
'-----------------------------------------------------------
'
Public Sub LevaRighe()
Dim wb As Workbook
Dim ws As Worksheet
Dim rng As Range
Dim bCalc As XlCalculation
Dim nFirst As Long
Dim nLast As Long
Dim sInt As String
Dim bOK As VbMsgBoxResult
On Error GoTo LevaRighe_Error
Set wb = ThisWorkbook
Set ws = wb.ActiveSheet
If Selection.Rows.Count > 1 Then _
sInt = Selection.Address(False, False)
sInt = InputBox("inserisci intervallo righe" & vbCrLf & _
"da eliminare (p.e. 5:8): ", "INTERVALLO", sInt)
If sInt = "" Then GoTo LevaRighe_Error
Set rng = ws.Range(sInt)
If rng Is Nothing Then
MsgBox "INTERVALLO ILLEGALE", vbCritical
GoTo LevaRighe_Error
End If
nFirst = rng.Row
nLast = nFirst + rng.Rows.Count - 1
bOK = MsgBox("elimino dalla riga " & nFirst & " alla riga " & _
nLast & vbCrLf & vbCrLf & "CONFERMI?", _
vbQuestion + vbYesNo, "ELIMINA RIGHE")
If bOK = vbYes Then
rng.EntireRow.Delete
MsgBox "RIGHE ELIMINATE", vbExclamation, "ELIMINA RIGHE"
End If
On Error GoTo 0
LevaRighe_Error:
If Err.Number <> 0 Then
MsgBox "INTERVALLO ILLEGALE", vbCritical
End If
Set rng = Nothing
Set ws = Nothing
Set wb = Nothing
End Sub
'---- fine LevaRighe ----
Fai sapere, grazie.
Bye!
Scossa
FANTASTICO!!
RISOLTO alla Grande ed alla velocità della LUCEEEEEEEEEEEEEE
GRAZIE MILLE
buona giornata
>
> GRAZIE MILLE
>
> buona giornata
Grazie a te per il riscontro.
Bye!
Scossa