Jump to content

SUBIECTE NOI
« 1 / 5 »
RSS
Info Coronavirus/Vaccinare vs Fake News

[Unde] gasesc paie pentru tub spray

Pane crocant

Nu functioneaza functia Sleep
 Masina de spalat rufe perfecta (o...

Ajutor turatie ventilatoare rgb c...

Ce riscuri sunt daca folosesc vop...

Trafo microunde
 Tethering Telefon -Xbox series S ...

Boxa Portabila - buget ~1.500 RON

Laser circular basculant cu glisare

Permis suspendat - intrebare
 Care a fost primul film din istor...

Inlocuire bloc pedalier

Sa-i actionez in judecata?

Google Stadia se Închide
 

Ajutor excel - cod VB filtrare dupa valoarea unei celule

- - - - -
  • Please log in to reply
2 replies to this topic

#1
byte00

byte00

    Junior Member

  • Grup: Members
  • Posts: 90
  • Înscris: 21.02.2015
Buna ziua,

Am nevoie sa finalizez un cod/script care sa permita filtrarea intr-un sheet in functie de valoarea dintr-o anumita celula. Experienta mea cu VB este limitata, cu toate acestea prin documentare am conceput un cod VB pentru asta, dar nu face intru-totul ceea ce doresc si am nevoie de ajutor. Mai jos codul:

Private Sub Worksheet_Change(ByVal Target As Range)
Set Target = Target.Cells(1, 1)
If Not Intersect(Target, Range("B2")) Is Nothing Then
Range("A5").CurrentRegion.AutoFilter field:=2, Criteria1:=Target.Value
End If
End Sub



Ideea este ca am sheetul care arata asa:
  
[ https://i.imgur.com/GTT8TbM.png - Pentru incarcare in pagina (embed) Click aici ]

In momentul de fata, pe baza codului VB de mai sus, se face filtrarea dupa Cod 1 (care este celula B2). Ca sa functioneze filtrare valorile din B2 se introduc manual (fie valoare, fie formula). In orice caz trebuie interactiune cu utilizatorul. Deci in functie de ce bag eu in B2 se returneaza rezultatele.

Insa lucrurile sunt putin mai complicate, in sensul ca valoarea din B2 trebuie sa fie preluata din alt sheet dupa formula "='sheet2'!C2".
In momentul in care valoarea aflata in celula sheet2'!C2 se schimba, filtrarea nu mai face nimic, raman afisate rezultatele anterioare, obtinute atunci cand introduc eu manual valoare in B2.

Ce modificari trebuie sa fac la codul VB pentru a obtine rezultatele dorite in momentul in care se schimba valoarea din sheet2'!C2 fara a mai fi necesara interactiunea cu utilizatorul?

Multumesc

Edited by byte00, 08 July 2015 - 11:22.


#2
nexusm

nexusm

    Senior Member

  • Grup: Senior Members
  • Posts: 2,793
  • Înscris: 07.07.2011
daca proiectul in sine tine sa demonstreze calitatile tale de a lucra/modifica un excel doar prin ceea ce pune el la dispozitie, nu este cazul sa citesti postul meu mai departe.
daca insa proiectul sta la baza unei posibile aplicatii mai extinse, avand posibilitatea de evolutie iti sugerez urmatoarele.
- crearea unei interfete de preluare a valorilor introduse de user
(acesta interfata poate fi chiar un tabel excel)
- salvarea datelor respective intr-o baza de date (indiferent ce format)
- prelucrarea informatiilor din baza de date(prin cod, evita IDE) functie de orice conditie sau cerinta impusa.
- afisarea rezultatelor intr-o interfata (acesta putand fi la randul ei tot un tabel excel, dar care in principiu contine doar date deja prelucrate)

o astfel de independenta in prelucrarea datelor iti ofera o libertatate maxima, putand face absolut tot ce-ti doreste plecand de la informatiile stocate intr-o baza de date.
sugerez o baza de date plecand de la premisa ca volumul si numarul de inregistrari pot ajunge... apreciabile.
in caz contrar un fisier text ar putea fi suficient

Edited by nexusm, 08 July 2015 - 15:44.


#3
byte00

byte00

    Junior Member

  • Grup: Members
  • Posts: 90
  • Înscris: 21.02.2015
Multumesc nexusm pentru varianta propusa. Baza de date exista, insa prin excel vroiam sa extrag anumite date (in functie de anumite conditii) si sa le pun intr-un formular. Intre timp am finalizat si se poate inchide discutia.

Anunturi

Neurochirurgie minim invazivă Neurochirurgie minim invazivă

"Primum non nocere" este ideea ce a deschis drumul medicinei spre minim invaziv.

Avansul tehnologic extraordinar din ultimele decenii a permis dezvoltarea tuturor domeniilor medicinei. Microscopul operator, neuronavigația, tehnicile anestezice avansate permit intervenții chirurgicale tot mai precise, tot mai sigure. Neurochirurgia minim invazivă, sau prin "gaura cheii", oferă pacienților posibilitatea de a se opera cu riscuri minime, fie ele neurologice, infecțioase, medicale sau estetice.

www.neurohope.ro

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

Forumul Softpedia foloseste "cookies" pentru a imbunatati experienta utilizatorilor Accept
Pentru detalii si optiuni legate de cookies si datele personale, consultati Politica de utilizare cookies si Politica de confidentialitate