PETER S BOOK EXCEL PROGRAMMING WITH VBA SUBROUTINE VBA PRESS BY

Похожие документы
VBA Principali Comandi

Excel & VBA. Excel e Visual Basic for Application

VBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole.

Excel & VBA. Excel e Visual Basic for Application

Visual Basic For Application Guida Pratica per Esempi

MINIMANUALE VBA PER CREARE MACRO NEI FOGLI EXCEL

28/02/2014 Copyright V. Moriggia

Note per la programmazione in linguaggio Visual Basic di Excel

Caratteristiche generali del linguaggio Visual Basic

Aprire un file xls che è contenuto in un percorso il cui nome è nella cella A1 Sub Apri() Dim A As String A = "C:\Documenti\" & Range("A1").

Classe 1C E-book di informatica Marco Ciani

Elementi di Informatica e Programmazione

Programma del corso. Elementi di Programmazione. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Reti di Calcolatori

Automazione Excel con Visual Basic - avanzato

IMPOSTAZIONI DI EXCEL. Per rendere disponibile l ambiente di sviluppo di Visual Basic for Application in Excel:

Programmazione con il linguaggio LibreOffice Basic

CAPITOLO 14 LE CONDIZIONI SUI LOOP. Figura 14.1 La fine dei dati A B C D E F G H

OGGETTO RANGE DI CELLE. Una cella o un gruppo di celle in un foglio di lavoro di Excel è un oggetto di tipo Range.

4. I moduli in Access 2000/2003

Evidenziare i divisori di un numero

Introduzione al Foglio Elettronico

Automazione Excel con Visual Basic (base)

Problemi scientifici con il linguaggio Visual Basic di Excel

Automazione Excel con Visual Basic (base)

5 Array Cicli iterativi Contenuto di cella 28/02/2014 Copyright V. Moriggia 1

Automazione Excel con Visual Basic (base)

Introduzione a Visual Basic Lezione 1 Concetti base e istruzioni condizionali

VISUAL BASIC FOR APPLICATION

Introduzione al Foglio Elettronico

Introduzione al Foglio Elettronico

Eloisa Fioravanti Excel per medicina odontoiatria e infermieristica

Programma del corso Che cosa è Excel. Il comando File \ Impostazione Pagina. Come selezionare le celle con il mouse.

Excel Base- Lezione 3. Barbara Pocobelli Estav Nord Ovest. Il comando Trova

U.T.E FOGLIO ELETTRONICO. Università della Terza Età. Sede di Novate Milanese. Corso Informatica Approfondimento. Docente: Giovanni Pozzi

Sommario CAPITOLO 1 INTRODUZIONE AL VBA CAPITOLO 2 I FONDAMENTALI DEL LINGUAGGIO VBA. Introduzione. Che cos'è un'applicazione in Excel?

Excel: guida alle operazioni di base per la risoluzione dell esercizio 13

U.T.E Università della Terza Età

Microsoft Visual Basic

FOGLIO ELETTRONICO. Microsoft Office EXCEL. LibreOffice CALC CALC. E' un software che assegna come estensione ai propri file (foglio elettronico).ods.

Automatizzare le attività con le macro di Visual Basic

Calcolare con il computer: Excel. Saro Alioto 1

Rimuovere la password dalle protezioni di foglio e cartella in Excel

Tabelle. Verdi A. Bianchi B. Rossi C. 12/02 Trasferta a Milano. Corso in sede. Riunione Ispettori a Milano Riunione in sede.

14Ex-Cap11.qxd :20 Pagina Le macro

Matematica in laboratorio

Operazioni preliminari: creare una cartella in Documenti

Introduzione alla Programmazione e Applicazioni per la Finanza M2 (Prodotti Derivati) Lezione 13

VBA da Zero all automation

Menù principale di Calc

Video Scrittura (MS Word)

9In questa sezione. Ordinare e filtrare i dati. Dopo aver aggiunto dati ai fogli di lavoro, potresti voler

Excel avanzato. Certificazione Microsoft. Excel: le basi. 1.1 Excel: le basi NUMBER TITLE

Modulo 3 - Elaborazione Testi 3.4 Oggetti

Programmazione in Excel con il linguaggio Visual Basic

UsedRange - eccezioni e alternative

Excel VBA Lezione 17. Generare numeri casuali

Excel. Il foglio di lavoro. Il foglio di lavoro Questa viene univocamente individuata dalle sue coordinate Es. F9

Analisi dei dati con Excel

Cosa è una macro? strumento per automatizzare delle operazioni fatte con un programma. istruzione complessa, composta da più istruzioni elementari

U88 Automatico. Versione 3.0

USO DELLA TASTIERA WORD RITA LUCCHESE - GUIDA ALLA PATENTE EUROPEA DEL COMPUTER - EDITRICE LA SCUOLA

3. Le routine evento in Access 2000/2003

Proprietà delle potenze

Creare una tabella di pivot

Indice a colpo d occhio

nome di un menu per visualizzarlo e poi selezionate facendo clic sul comando che vi interessa.

Introduzione alla Programmazione e Applicazioni per la Finanza M2 (Prodotti Derivati) Lezione 8

Excel 3. Master Universitario di II livello in MANAGER NELLE AMMINISTRAZIONI PUBBLICHE A.A Prof.ssa Bice Cavallo

Piccola guida a VBA per Word

Транскрипт:

PETER S BOOK EXCEL PROGRAMMING WITH VBA SUBROUTINE VBA PRESS BY

RACCOLTA DI SUBROUTINE DA USARE SU PULSANTI DI COMANDO DEL VBA DAL MENU VISUALIZZA: CASELLA DEGLI STRUMENTI E DA MENU STRUMENTI: NUOVA MACRO EDITOR VISUAL BASIC E INSERIRE NUOVO MODULO Private Sub CommandButton1_Click().. End Sub

SOMMARIO PETER S BOOK... 1 FORM Avvio Form da un Tasto... 5 CELLA POSIZIONARSI... 4 CELLA RESTITUZIONE NUMERO RIGA... 4 CELLA Inserire il Nome del foglio... 4 RECUPERO VALORE - da una cella a da variabile... 4 CELLA - IDENTIFICARE... 4 FINESTRA - STATO della Finestra... 5 COMBOBOX - Posizionarsi al Record 0... 5 CANCELLARE Area... 4 RECUPERO INFO del Pc... 5 FOGLIO - PASSAGGIO ad un altro... 5 INDIRETTO E SINISTRA... 5 SE CONCATENATO 2 VOLTE... 5 AVVIO all apertura (Foto)... 5 AVVIO all apertura Private Sub Workbook_Open()... 6 TEMPORIZZAZIONE... 6 TROVARE su colonna A l ultimo Inserimento... 6 CONVERSIONE TUTTO IN MAIUISCOLE... 6 CONVERTE TUTTO IN MINUSCOLO...Errore. Il segnalibro non è definito. CONVERTE LE INIZIALI IN MAIUSCOLO... 6 DIVISIONE PAROLA AD OGNI SPAZIO VER1... 6 DIVISIONE PAROLA AD OGNI SPAZIO VER2... 6 GIORNO.SETTIMANA(NUM;RESTIT) - VALORE... 7 GIORNO SETTIMANA - LISTA GIORNI SETT. ESCUSO SAB-DOM... 7 DATA FILTER - FILTRO... 7 DATA-FILTER - TOTALE RECORD... 7 DATA FILTER CONTROLLO SE ATTIVO FILTRO... 7 DATA FILTER - PULIZIA Filtro... 7 DATA FILTER RIMUOVE FILTRO SE ESISTE... 7 DATA FILTER NASCONDE FRECCE SE ATTIVO FILTRO... 7 DATA-FILTER TOTALE RECORD FILTRATI... 8 DATA FILTER VISUALIZZA TUTTO... 8 DATA FILTER VISUALIZZA TUTTO 2... 8 DATA FILTER - RICERCA... 8 DATA FILTER RICERCA 2... 8 AVVIO PROGRAMMA - SHELL... 9 CELLE - RIGHE A COLORI ALTERNATI... 4

CELLA POSIZIONARSI [C31].Select CELLA - SELEZIONE Range( E10 ) CELLA - RECUPERO VALORE SU FOGLIO ATTIVO Worksheets("Sheet1").Activate MsgBox ActiveCell.Value CELLA - RECUPERO NUMERO RIGA/COLONNA x = ActiveCell.Row y = ActiveCell.Column CELLA PRENDE VALORE DA INPUTBOX X = INPUTBOX("") Range("a1") = x CELLA PRENDE VALORE IMPOSTATO Range("F" & 2).Value = "DDDD" CANCELLARE Area Range("C4").ClearContents C4 E UN NOME DEFINITO TRAMITE IL MENU INSERISCI: NOME, DEFINISCI CELLA Inserire il Nome del foglio Private Sub Workbook_Activate() WS = Sheets.Count For cnt = 1 To WS Worksheets(cnt).Activate ActiveSheet.Range("F8") = Worksheets(cnt).Name Next cnt Worksheets(1).Activate End Sub RECUPERO VALORE - da una cella a da variabile MyNumber = Range("A1").Value MyString = Range("MyCell").Value CELLA DA-A CASELLA TEXT TextBox1.Text = ActiveCell CELLE - RIGHE A COLORI ALTERNATI Dim CR, Even_Color, Odd_Color As Long Even_Color = RGB(240, 240, 210) ' colore righe pari Odd_Color = RGB(255, 255, 255) ' colore righe dispari For CR = 1 To Selection.Rows.Count If CR Mod 2 = 0 Then Selection.Rows(CR).Cells.Interior.Color = Even_Color Else Selection.Rows(CR).Cells.Interior.Color = Odd_Color Next

FINESTRA - STATO della Finestra Application.WindowState = xlminimized Application.WindowState = xlnormal COMBOBOX - Posizionarsi al Record 0 ComboBox1.ListIndex = -1 Foglio1.ComboBox1.Activate RECUPERO INFO del Pc Cells(1, 1) = Environ(4) FOGLIO - PASSAGGIO ad un altro Sheets("DISTINTA").Activate INDIRETTO E SINISTRA =SINISTRA(INDIRETTO("C"&E2);13) SE CONCATENATO 2 VOLTE =SE(GIORNO.SETTIMANA(D5)=7;"D";SE(GIORNO.SETTIMANA(D5)=1;"D";"S")) =CONTA.SE(E5:E20;"S") RICERCA CARATTERI JOLLY * CARATTERE SINGOLO? SERIE DI CARATTERI SPAZI - ELIMINA SPAZI ANNULLA.SPAZI(testo) RIMOZIONE - Link Selezionato Selection.Hyperlinks.Delete [C31].Select RIMOZIONE MULTI-Link ActiveSheet.Hyperlinks.Delete FORM Avvio Form da un Tasto UserForm1.Show AVVIO all apertura (Foto) Qui sotto l autoopen per Excel 97 e precedenti dentro ad un modulo Qui sotto l autoopen per Excel 2000 e sucessivi

AVVIO all apertura Private Sub Workbook_Open(). MsgBox "PROVA" End Sub TEMPORIZZAZIONE Application.Wait Now + TimeValue("00:00:06") TROVARE su colonna A l ultimo Inserimento LastRowColA = Range("A500").End(xlUp).Row 'RITORNA IL VALORE SU MSGBOX 'RITORNA IL VALORE SU F4 MsgBox Range("A" & LastRowColA) Range("F4") = Range("A" & LastRowColA) CONVERSIONE TUTTO IN MAIUISCOLE/MINUSCOLE Dim CL As Range For Each CL In Selection.Cells If CL.HasFormula = False Then CL.Value = UCase(CL.Value) LCASE CONVERTE LE INIZIALI IN MAIUSCOLO Dim CL As Range For Each CL In Selection.Cells If CL.HasFormula = False Then Trimma = Trim(CL.Value) Iniziale = Left(Trimma, 1) Resto = Mid(Trimma, 2) CL.Value = UCase(Iniziale) & Resto Next CL DIVISIONE PAROLA AD OGNI SPAZIO VER1 Dim arrayindirizzo() As String arrayindirizzo = Split(Range("A1").Text, " ") Range("A2:A" & (UBound(arrayIndirizzo) + 2)) = WorksheetFunction.Transpose(arrayIndirizzo) Range("A2:A" & (UBound(arrayIndirizzo) + 2)).HorizontalAlignment = xlleft DIVISIONE PAROLA AD OGNI SPAZIO VER2 Sub dividi() Dim Riga, Col, A, B, I, Parola Riga = 1: Col = 1

A = "Questa è una bella giornata" B = 1 For I = 1 To Len(A) If Mid(A, I, 1) = " " Then Parola = Mid(A, B, I - B) Cells(Riga, Col) = Parola Riga = Riga + 1 B = I + 1 Next Parola = Mid(A, B) Cells(Riga, Col) = Parola End Sub GIORNO.SETTIMANA(NUM;RESTIT) - VALORE RESTIT OMMESSO DA 1 DOM A 7 SABATO RESTIT 2 DA 1 LUNEDI A 7 DOMENICA RESTIT 3 DA 0 LUNEDI A 6 DOMENICA GIORNO SETTIMANA - LISTA GIORNI SETT. ESCUSO SAB-DOM IN A1 ES. 12/12/2011 IN A2 =SE(GIORNO.SETTIMANA(A1+1)=7;A1+3;SE(GIORNO.SETTIMANA(A1+1)=1;A1+2;A1 +1)) DATA FILTER - FILTRO If Worksheets("Foglio3").FilterMode = True Then 'controlliamo che non sia già inserito il filtro, altrimenti Worksheets("Foglio3").ShowAllData 'lo togliamo DATA-FILTER - TOTALE RECORD totrec = Cells(Rows.Count, 1).End(xlUp).Row MsgBox totrec DATA FILTER CONTROLLO SE ATTIVO FILTRO If Not ActiveSheet.AutoFilterMode Then ActiveSheet.Range("A1").AutoFilter DATA FILTER - PULIZIA Filtro If ActiveSheet.FilterMode Then ActiveSheet.ShowAllData DATA FILTER RIMUOVE FILTRO SE ESISTE Worksheets("Data").AutoFilterMode = False DATA FILTER NASCONDE FRECCE SE ATTIVO FILTRO 'hides all arrows except column 2 Dim c As Range Dim i As Integer i = Cells(1, 1).End(xlToRight).Column Application.ScreenUpdating = False

For Each c In Range(Cells(1, 1), Cells(1, i)) If c.column <> 2 Then c.autofilter Field:=c.Column, _ Visibledropdown:=False Next Application.ScreenUpdating = True DATA-FILTER TOTALE RECORD FILTRATI ultimo = ActiveSheet.Range("A1000").End(xlUp).Row 'reperiamo il numero dell'ultima riga occupata, colonna A tot = 0 'impostiamo a zero i to valoref = 0 For n = 2 To ultimo If Rows(n).Hidden = False Then 'SE LA RIGA ora letta NON è NASCOSTA (quindi hidden = false) CIOè è FILTRATA 'prendiamo il numero di questa riga scoperta e lo usiamo come primo 'argomento nella sintassi Cell(riga, colonna),se la cella, stessa 'riga, colonna 3 è uguale a m e incrementiamo i totalizzatori riga = Rows(n).Row If Cells(riga, 1) <> "" Then tot = tot + 1 Next MsgBox tot DATA FILTER VISUALIZZA TUTTO Range("B3").Select ActiveSheet.ShowAllData Selection.AutoFilter Field:=1 DATA FILTER VISUALIZZA TUTTO 2 If ActiveSheet.FilterMode Then ActiveSheet.ShowAllData DATA FILTER RICERCA (EXCECL 97) XX$ = InputBox("") Range("B3").Select Selection.AutoFilter Selection.AutoFilter Field:=1, Criteria1:="*" & XX$ & "*" DATA FILTER RICERCA (EXCEL 2000) XX = InputBox("INSERISCI NOMINATIVO", "RICERCA") If Not ActiveSheet.AutoFilterMode Then ActiveSheet.Range("B4").AutoFilter Sheets("Dipendenti").Select (Sheets("Foglio1").Select) Selection.AutoFilter Field:=1, Criteria1:=strFind & "*" & XX & "*" Range("B4:B2100").Select

APICE: RIGA DI COMMENTO O ATTESA DI PROVA 'OK Selection.AutoFilter Field:=1, Criteria1:="ANFOSSO TERESA " 'OK Selection.AutoFilter Field:=1, Criteria1:="=" & Range("C2").Value AVVIO PROGRAMMA - SHELL X = ActiveCell.Row 'Y = ActiveCell.Column Range("E2") = X 'MsgBox Range("F3") Shell ("E:\MB\MB-PHO\YEAR\ACDSEE32.EXE " & Range("F3")), 1 CONTA CELLE IN QUEL MOMENTO FILTRATE O NO 'If ActiveSheet.AutoFilterMode = True Then MsgBox ActiveSheet.AutoFilter.Range.Columns(1).SpecialCells(xlCellTypeVisible).Count - 1 'Else ' MsgBox "no filtro" ' 'ELIMINA FILTRO ActiveSheet.AutoFilterMode = False ------------- ------------- ----------- APRE FILE E VA' SULLA CELLA Workbooks.Open Filename:="C:\Mario\DataBase.xls" Range("R2").Select APRE NUOVO FILE SU 3 ALETTA SU CELLA A1 Windows("C:\MIX-TRY.xls").Activate Sheets("Terzo").Select Range("A1").Select COPIA CELLA SU FOGLIO ATTIVO Range("H6").Select Selection.Copy Windows("New.xls").Activate Sheets("Terzo").Select ActiveSheet.Paste FORMATTAZIONE - SCORRE LISTA E CONTROLLO DATI numerodacercare = Val(InputBox("Immetti il numero da cercare")) For n = 1 To 10 Valore = ActiveCell.Value If Valore = numerodacercare Then Selection.Font.ColorIndex = 3 Selection.Font.Bold = True Else

Next Selection.Font.ColorIndex = 1 Selection.Font.Bold = False ActiveCell.Offset(1, 0).Select RANDOM - 12 NUMERI A CASO Range("B10").Select For N = 1 To 12 Range("B" & N + 10) = Int(Rnd() * 90) Next AUTOFORMATTAZIONE - ASSEGNA DATI Rows("1:1").Select Selection.Insert Shift:=xlDown Range("A1").Value = "Società" Range("A2").Value = "Fatturato2005" Range("A3").Value = "Fatturato2006" Range("A4").Value = "Differenza" Range("A1").Select Selection.AutoFormat Format:=xlRangeAutoFormatList1, Number:=True, Font:=True, Alignment:=True, Border:=True, Pattern:=True, Width:=True SE 4 VOLTE SE(A3>89;"A";SE(A3>79;"B";SE(A3>69;"C";SE(A3>59;"D";"F"))))