Soluții

Remediere: VBA runtime error 1004

Eroarea VBA Runtime Error 1004 apare cel mai des în Excel, când o macrocomandă încearcă să facă o acțiune pe care Excel nu o poate executa: selectare greșită, sheet inexistent, fișier blocat, range invalid, workbook protejat etc.

Cele mai frecvente cauze și remedieri

1. Macro-ul încearcă să selecteze un sheet care nu este activ

Exemplu problematic:

Worksheets("Sheet1").Range("A1").Select

Dacă Sheet1 nu este activ, poate da eroare.

Remediere:

Worksheets("Sheet1").Activate
Worksheets("Sheet1").Range("A1").Select

Sau mai bine, fără Select:

Worksheets("Sheet1").Range("A1").Value = "Test"

2. Numele sheet-ului este greșit

Verifică dacă sheet-ul există exact cu același nume.

Exemplu:

Worksheets("Date").Range("A1").Value = "OK"

Dacă foaia se numește de fapt Data, DATE sau Date cu spațiu la final, apare eroarea.

Remediere:

Dim ws As Worksheet
Set ws = ThisWorkbook.Worksheets("Date")
ws.Range("A1").Value = "OK"

3. Range-ul este invalid

Exemplu problematic:

Range("A0").Select

sau:

Range("A1:A").Select

Remediere:

Range("A1").Select
Range("A1:A100").Select

Pentru ultimul rând:

Dim lastRow As Long
lastRow = Cells(Rows.Count, "A").End(xlUp).Row
Range("A1:A" & lastRow).Select

4. Workbook-ul sau sheet-ul este protejat

Dacă foaia este protejată, macro-ul nu poate modifica celule.

Remediere:

Worksheets("Date").Unprotect Password:="parola"
Worksheets("Date").Range("A1").Value = "Test"
Worksheets("Date").Protect Password:="parola"

Dacă nu are parolă:

Worksheets("Date").Unprotect

5. Fișierul este deschis Read-Only

Verifică dacă fișierul Excel este deschis în mod Read-Only sau dacă este pe un share unde nu ai drepturi de scriere.

Remedieri:

- salvează fișierul local;
- verifică drepturile pe folder;
- închide fișierul de pe alte calculatoare;
- verifică dacă nu este blocat de OneDrive / SharePoint / antivirus.

6. Macro-ul folosește ActiveWorkbook în loc de ThisWorkbook

Dacă ai mai multe fișiere Excel deschise, ActiveWorkbook poate indica alt fișier.

Problematic:

ActiveWorkbook.Worksheets("Date").Range("A1").Value = "Test"

Mai sigur:

ThisWorkbook.Worksheets("Date").Range("A1").Value = "Test"

7. Copiere / lipire eșuată

Eroarea 1004 apare des la:

Selection.PasteSpecial Paste:=xlPasteValues

Remediere mai stabilă:

Worksheets("Sursa").Range("A1:A10").Copy
Worksheets("Destinatie").Range("A1").PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False

Sau fără clipboard:

Worksheets("Destinatie").Range("A1:A10").Value = _
Worksheets("Sursa").Range("A1:A10").Value
[mai mult...]

Remediere Java Runtime Environment not found

Eroarea “Java Runtime Environment Not Found” apare când aplicația nu găsește Java instalat sau caută o versiune greșită de Java.

Remediere rapidă pe Windows

1. Verifică dacă Java este instalat

Deschide Command Prompt și scrie:

java -version

Dacă primești mesaj de tip:

'java' is not recognized...

înseamnă că Java nu este instalat sau nu este pus în PATH.

2. Instalează Java

Pentru aplicații obișnuite care cer doar Java Runtime, poți instala Java 8 Runtime de pe pagina oficială Java. Oracle menționează că Java 8 este pentru utilizatorii care au nevoie să ruleze aplicații desktop/laptop bazate pe Java.

Caută:

Java 8 download Windows

sau intră pe pagina oficială Java / Oracle.

Pentru aplicații mai noi, poți instala un JDK/JRE modern, de exemplu Eclipse Temurin, unde poți alege versiunea și tipul de pachet JDK/JRE.

Recomandare practică:

Pentru aplicații vechi: Java 8, 32-bit sau 64-bit în funcție de aplicație.
Pentru aplicații noi: Java 17 sau Java 21.

3. Verifică dacă aplicația cere Java 32-bit sau 64-bit

Asta este foarte important.

Dacă aplicația este veche, de multe ori cere Java 32-bit, chiar dacă Windows-ul este 64-bit.

Instalări tipice:

Java 64-bit:
C:\Program Files\Java\

Java 32-bit:
C:\Program Files (x86)\Java\

Dacă aplicația caută Java 32-bit și tu ai instalat doar 64-bit, eroarea poate continua.

4. Setează JAVA_HOME

După instalare, verifică unde este instalat Java. Exemplu:

C:\Program Files\Java\jre1.8.0_491

sau:

C:\Program Files\Eclipse Adoptium\jdk-17...

Apoi:

Start → search: Environment Variables → Edit the system environment variables

Intră la:

Environment Variables

La System variables, adaugă:

Variable name: JAVA_HOME
Variable value: C:\Program Files\Java\jre1.8.0_491

sau calea unde ai Java instalat.

Apoi la variabila Path, adaugă:

%JAVA_HOME%\bin

Închide și redeschide aplicația.

5. Testează din nou

În Command Prompt:

java -version

Ar trebui să apară ceva de genul:

java version "1.8.0_491"

sau versiunea instalată.

6. Dacă eroarea apare într-o aplicație veche

Instalează ambele variante, dacă nu știi ce cere aplicația:

Java 8 32-bit
Java 8 64-bit

Apoi repornește PC-ul.

[mai mult...]