Am rezolvat-o cu problema mea in care vroiam cind selectez ceva sa imi apara o imagine iar cind selectez altceva sa dispara imaginea precedenta si sa apara o alta imagine.Dar , intotdeauna esxista un DAR, pentru a explica si celorlalti cum am facut, trebuie sa-mi explice urmatorul cod :
Private Sub Worksheet_Calculate()
Dim myCell As Range
Dim mySel As Range
Set mySel = Selection
With Application
.EnableEvents = False
.DisplayAlerts = False
.ScreenUpdating = False
On Error Resume Next
For Each myCell In Range("K14")
ActiveSheet.Shapes(myCell.Address & "Final").Delete
ActiveSheet.Shapes(myCell.Value).Select
Selection.Copy
myCell.Offset(0, 1).Select
ActiveSheet.Paste
Selection.Name = myCell.Address & "Final"
Selection.ShapeRange.ZOrder msoSendToBack
Next myCell
mySel.Select
.EnableEvents = True
.DisplayAlerts = True
.ScreenUpdating = True
End With
End Sub
Acest cod este scris in interiorul foi de lucru adica dai click dreapta pe denumirea foii si alegi View Code si se deschide o fereastra de VB de editare cod.
Ce inseamna sau ce vrea sa spuna acest cod daca se poate sa-l explicati linie cu linie ar fi mult mai bine sa-l inteleg si eu.
Multumesc anticipat.
Pagina 1 din 1
Excele Cine imi poate explica acest cod?
#2
Scris 14 December 2007 - 10:00 AM
Private Sub Worksheet_Calculate()
Dim myCell As Range
Dim mySel As Range
Set mySel = Selection
With Application
.EnableEvents = False
.DisplayAlerts = False
.ScreenUpdating = False
On Error Resume Next daca apare o eroare treci la pasul urmator (o ignora)
For Each myCell In Range("K14") pentru fiecare celula din domeniul K14[color]
ActiveSheet.Shapes(myCell.Address & "Final").Delete [color="#0000FF"]sterge desenul cu numele AdresaCeluleiCurente + Final
ActiveSheet.Shapes(myCell.Value).Select [color="#0000FF"]selecteaza desenul cu numele ValoareaCeluleiCurente[/color]
Selection.Copy [color="#0000FF"]copiaza desenul selectat la linia anterioara[/color]
myCell.Offset(0, 1).Select [color="#0000FF"]selecteaza celula aflata la 0 coloane si 1 randuri distanta de celula curenta (urmatoarea celula in jos)[/color]
ActiveSheet.Paste [color="#0000FF"]lipeste desenul copiat[/color]
Selection.Name = myCell.Address & "Final" [color="#0000FF"]redenumeste celula selectata cu numele AdresaCeluleiMele + Final[/color]
Selection.ShapeRange.ZOrder msoSendToBack [color="#0000FF"]pune desenul in fundal la celula selectata (scrisul sa fie deasupra desenului)[/color]
Next myCell [color="#0000FF"]treci la celula urmatoare din domeniu (nici n-o sa aiba unde, pentru ca domeniul contine o singura celula
)[/color]
mySel.Select
.EnableEvents = True
.DisplayAlerts = True
.ScreenUpdating = True
End With
End Sub
Dim myCell As Range
Dim mySel As Range
Set mySel = Selection
With Application
.EnableEvents = False
.DisplayAlerts = False
.ScreenUpdating = False
On Error Resume Next daca apare o eroare treci la pasul urmator (o ignora)
For Each myCell In Range("K14") pentru fiecare celula din domeniul K14[color]
ActiveSheet.Shapes(myCell.Address & "Final").Delete [color="#0000FF"]sterge desenul cu numele AdresaCeluleiCurente + Final
ActiveSheet.Shapes(myCell.Value).Select [color="#0000FF"]selecteaza desenul cu numele ValoareaCeluleiCurente[/color]
Selection.Copy [color="#0000FF"]copiaza desenul selectat la linia anterioara[/color]
myCell.Offset(0, 1).Select [color="#0000FF"]selecteaza celula aflata la 0 coloane si 1 randuri distanta de celula curenta (urmatoarea celula in jos)[/color]
ActiveSheet.Paste [color="#0000FF"]lipeste desenul copiat[/color]
Selection.Name = myCell.Address & "Final" [color="#0000FF"]redenumeste celula selectata cu numele AdresaCeluleiMele + Final[/color]
Selection.ShapeRange.ZOrder msoSendToBack [color="#0000FF"]pune desenul in fundal la celula selectata (scrisul sa fie deasupra desenului)[/color]
Next myCell [color="#0000FF"]treci la celula urmatoare din domeniu (nici n-o sa aiba unde, pentru ca domeniul contine o singura celula
mySel.Select
.EnableEvents = True
.DisplayAlerts = True
.ScreenUpdating = True
End With
End Sub
Impartaseste acest subiect:
Pagina 1 din 1
Subiecte similare
| Topic | Deschis de | Replici | Vizualizari | |
|---|---|---|---|---|
|
Examen Info
Office |
daydream | 2 | 2.307 |
|
Exportarea informatiilor din Tclientdataset/TDBGrid in fisiere .DOC |
stelutzzu | 7 | 3.935 |
|
Separare cifre de litere dintr-un camp | b00b00r00za | 1 | 1.756 |
|
ApexSQL - licente de $1000 oferite gratuit | dopoto2 | 0 | 1.660 |
|
Powerpoint | malexoid | 25 | 49.519 |
Contact
Facebook
Twitter
RSS












