sau Inregistrare
  
Pagina 1 din 1
  • Nu poti crea un subiect nou
  • Nu puteti raspunde pe acest topic

Excele Cine imi poate explica acest cod? Evaluare topic: - - - - -

#1 Utilizator offline   Constantin Marin 

  • Boboc
  • Pip
  • Grup: Full Members
  • Mesaje: 43
  • Inregistrat: 25-January 07

  Scris 11 December 2007 - 01:05 AM

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.
0

#2 Utilizator offline   Paul Brahtl 

  • Orhidee
  • PipPipPipPipPipPip
  • Grup: Moderator Global
  • Mesaje: 1.933
  • Inregistrat: 25-July 07

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 :baby: )[/color]

mySel.Select

.EnableEvents = True
.DisplayAlerts = True
.ScreenUpdating = True
End With
End Sub
0

Reclama



Impartaseste acest subiect:


Pagina 1 din 1
  • Nu poti crea un subiect nou
  • Nu puteti raspunde pe acest topic


Subiecte similare Collapse

  Topic Deschis de Replici Vizualizari
Replici noi Examen Info
Office
daydream  2 2.307
Replici noi Atasamente Delphi Tclientdataset export in .DOC
Exportarea informatiilor din Tclientdataset/TDBGrid in fisiere .DOC
stelutzzu  7 3.935
Replici noi Separare cifre de litere dintr-un camp b00b00r00za  1 1.756
Replici noi ApexSQL - licente de $1000 oferite gratuit dopoto2  0 1.660
Hot Topic (New) Powerpoint malexoid  25 49.519