lunes, 13 de noviembre de 2017
lunes, 23 de octubre de 2017
Sirve tener un antivirus pirata...???
Sirve tener un antivirus Pirata
Te voy a dar la mejor explicación sobre tener un antivirus pirata o crackeado, definitivamente la respuesta es “No”
No sirve tener un antivirus pirata, por varias razones, la primera y la más sencilla es que un antivirus de cualquier fabricante descarga desde Internet actualizaciones de sus servidores en intervalos de 3 a 15 días (esto ocurre para identificar las amenazas actuales) mes con mes, verifica el número de serie que has introducido y pasa lo siguiente si es detectado como pirata:
1.- Inmediatamente es desactivado
2.- en el mejor de los casos te indica que esta en lista negra “lista de números de serie almacenados e identificados con múltiples instalaciones”
3.- Te envía mensajes estorbosos de que has caído en un fraude y te invita a comprarlo.
4.- tienes un programa inservible el cual ocupa espacio en tu disco duro y roba memoria RAM.
Tener un antivirus pirata equivale a tener lo más preciado en una caja fuerte de última tecnología (Tu Información) y que esta se habrá con una llave de abuelita de los años 50.
sábado, 7 de octubre de 2017
Algunas Claves del Catalogo de Productos v3.3 para su uso en Refaccionarias
Clave SAT Descripción del Producto
15111700 | Aditivo Bardhal 1 y 2 |
15121501 |
Aceite motor |
15121504 |
Aceite hidraulico |
15121508 |
Aceite de transmision |
15121509 |
Liquido de frenos |
15121802 |
WD 40 |
15121902 |
BAT, grasa |
23251807 |
Sellos del monoblock |
23281902 |
Quimicos para el lavado del motor y sus partes en general |
25171502 |
Pluma limpiaparabrisas para auto |
25171505 |
Pluma limpiaparabrisas para camioneta |
25171508 |
Motor para limpiaparabrisas |
25171706 |
Calibrador de freno |
25171710 |
Bomba de Clutch, Cilindro maestro |
25171712 |
Balatas de tambor |
25171713 |
Balatas de disco |
25172001 |
Suspensión para automoviles |
25172002 |
Suspensión para camiones |
25172003 |
Amortiguador para camioneta |
25172004 |
Amortiguador para auto |
25172009 |
Buje de automovil |
25172013 |
Suspensión - Horquilla |
25172110 |
Claxon |
25172405 |
Sistema de inyeccion de combustible |
25172408 |
Tapones de aceite y gasolina |
25172409 |
Bomba de Gasolina |
25172410 |
Inyector: Orling, micro filtro |
25172411 |
Flotador de bomba de gasolina |
25172711 |
Filtro de Aire |
25172907 |
Focos de halogeno, led |
25172908 |
Focos de polos |
25173806 |
Punta flecha |
25173810 |
Cruceta, triceta, Yugo |
25173812 |
Caja estándar |
25173813 |
Caja automotica |
25173902 |
Bobina de encendido, distribuidor de encendido |
25174001 |
Ventilador automotriz |
25174002 |
Radiadores automotrices |
25174003 |
Tapon de radiador |
25174004 |
Anticongelante |
25174005 |
Odometro, tacometro, velocimetro |
25174006 |
Manguera para anticongelante, toma de agua |
25174801 |
Gato para camion |
25174810 |
Gato para automovil |
25174901 |
Rebotes, base amortiguador de goma |
25174903 |
base amortiguador con metal |
25191713 |
deposito de anticongelante |
26101409 |
Rotor del alternador |
26101704 |
Soporte de motor |
26101710 |
Carburador de motor |
26101711 |
Metales de biela del motor |
26101712 |
Valvula PCV |
26101720 |
Turbo del motor |
26101725 |
Vayoneta de aceite |
26101726 |
Filtro para Aceite |
26101732 |
Bujia |
26101736 |
Pistones del motor |
26101737 |
Cadena de distribucion |
26101740 |
Inyectores |
26101757 |
Aumento de bujias, |
26101769 |
Bobina de |
26101772 |
Limpiador de inyector |
26101780 |
Bulbo de aceite |
26111504 |
Banda de distribucion |
26111548 |
Palanca de velocidades |
26111703 |
Acumulador o bateria automotriz |
26111801 |
Bandas K0 y GS |
26111802 |
Banda de tiempo |
26111804 |
Bandas tipo A y B |
26111805 |
Tensor de banda |
26111806 |
Polea dentada |
26111807 |
Polea de distribucion |
26111811 |
Banda de tiempo (dientes ambos lados) |
26111902 |
kit de Clutch, horquilla de cluth |
26121708 |
Cable pasa corriente |
26121800 |
Cable automotriz |
6121852 |
Cable para bujias |
31162903 |
Abrazadera sinfín |
31171503 |
Baleros |
31171600 |
Maza de rueda |
31181800 |
Forro para automovil |
31201502 |
Cinta aislante |
31401505 |
Junta de tapa de punteria |
31411904 |
Reten |
39121454 |
Terminal de baterias |
39121622 |
Fusible automotriz |
40142006 |
Manguera hidrahulica |
40151524 | Bomba de aceite |
40161513 | Filtro de gasolina, filtro de combustibles |
jueves, 30 de marzo de 2017
Contabilidad: SAT nos espia....???
Aún si no tienes obligaciones, hacienda puede enviarte invitaciones para pagar impuestos, y que ahora que la autoridad fiscal está teniendo la necesidad, casi de forma urgente, de hacerse llegar de más recursos, está muy alerta a todos los movimientos que realizan los contribuyentes, aun si tienen o no obligaciones fiscales, y unos de sus principales “aliados” son los bancos, incluso recientemente se ha observado en redes sociales la orden de la SCJN (Suprema Corte de Justicia de la Nación) de enviar información de los cuenta-habientes al SAT (Servicio de Administración Tributaria), cierto o no, el SAT ya desde antes obtenía esta información.
Y es que a través de las cuentas bancarias es como están vigilando los movimientos de cada uno de los contribuyentes, y derivado de esta vigilancia es como últimamente están haciendo llegar invitaciones para algunos contribuyentes para que informen al SAT sobre ciertos movimientos bancarios que dicha autoridad ha observado.
¿Cómo se entera hacienda de las obligaciones?
De la larga lista de contribuyentes cautivos existen gran cantidad de personas físicas, que por alguna u otra razón, están registradas “sin obligaciones fiscales”, y cuando les llegan a depositar en su cuenta bancaria una cantidad significativa, la cual la autoridad fiscal puede considerar fuera de lo ordinario, entonces es cuando hace llegar una invitación que contiene la información de los depósitos en cuestión incluyendo los impuestos determinados con base en éstos, para que estos contribuyentes liquiden o en su caso aclaren el origen de dichos recursos.
Incluso hay personas que teniendo alguna actividad empresarial no se encuentran en el RFC, sin embargo sus pagos y demás transacciones las realizan a través de sus cuentas bancarias, lo que en estos tiempos no es nada recomendable, por las razones inicialmente comentadas, en dado si están comenzando o no, es mejor manejarse son solo efectivo.
Ahora bien, ante estos casos, lo que la autoridad fiscal más recomienda para aquellos contribuyentes sin obligaciones, es una actualización de su situación, para que una vez actualizados continúen pagando sus impuestos que le corresponda.
Y para el caso de aquellos contribuyentes que utilizan sus cuentas bancarias sin encontrarse registrados ante hacienda, lo más viable es registrarse y pagar lo que les toca con respecto a los impuestos, y al mismo tiempo hacer uso de los beneficios fiscales que les pudieran aplicar.
Desde luego que estas recomendaciones que hacienda realiza, son solo eso, recomendaciones, habrá personas expertas con mejores sugerencias, que también son válidas siempre y cuando tanto los contribuyentes como hacienda queden contentos, y sobre todo siempre que sea dentro de lo que las respectivas leyes determinen.
Recordemos que actualmente el SAT está más alerta, y para realizar algún tipo de operación o de actividad debemos tener muy bien analizada la situación, y no tener problemas futuros.
Primero que nada, visita a un contador de tu confianza y profesional, él sabrá orientarte de la mejor forma para que no caigas en irregularidades con la autoridad fiscal. Él podrá ayudarte a determinar correctamente tus impuestos y te podrá orientar para poner al corriente tu situación mercantil.
No te escondas, ya que, si bien el SAT monitorea tus movimientos, generar omisión a estos avisos puedes desencadenar una serie de multas y sanciones que incluso pueden llegar a lo penal.
Ahora que lo sabes, considera que el costo de un contador es muchísimo menor a los costos de multas, actualizaciones y recargos.
jueves, 23 de marzo de 2017
Contabilidad: Nueva version SUA 3.4.9
El día 28 de febrero de 2017, el Instituto Mexicano del Seguro Social (IMSS) da a conocer a través de su página de Internet, la versión 3.4.9. del Sistema Único de Autodeterminación (SUA).
Esta nueva versión contiene ajustes para el cálculo de las cuotas obrero patronales con la Unidad de Medida y Actualización (UMA), así como créditos INFONAVIT con factor de descuento.
Aun no se sabe a partir de cuándo es obligatoria esta nueva versión, se debe tener presente que se habían estado reportando fallas en la actualización a la versión 3.4.8. del sistema, por lo que es probable que en esta nueva versión esos problemas se haya superado.
Te recomendamos hacer un respaldo de toda la base de datos del SUA antes de llevar acabo la actualización. Ruta por default C:\cobranza\SUA\SUA.mdb
Contabilidad: Se invierte el uso de “Método” y “Forma” de Pago.
La Forma de Pago y Método de Pago se han definido de diferente forma en el CFDI 3.3 del SAT. Recientemente se publicó en el Diario Oficial de la Federación el anexo 20, este anexo contiene las reglas para la emisión de los Comprobantes Fiscales Digitales por Internet de los contribuyentes.
“Uno de los cambios del anexo 20 es la definición del Metodo de Pago y las Formas de Pago, las cuales ahora sonaran mas lógicas para los usuarios.”
En el CFDI 3.2 se manejan los concepto de “Método de Pago” y “Forma de Pago de la siguiente manera:
MetodoDePago Descripción: Atributo requerido de texto libre para expresar el método de pago de los bienes o servicios amparados por el comprobante. Se entiende como método de pago leyendas tales como: cheque, tarjeta de crédito o debito, depósito en cuenta, etc.
FormaDePago Descripción: Atributo requerido para precisar la forma de pago que aplica para este comprobante fiscal digital a través de Internet. Se utiliza para expresar Pago en una sola exhibición o número de parcialidad pagada contra el total de parcialidades, Parcialidad 1 de X.
Origen de la problemática
Desde agosto de 2012 Fiscalia había expuesto una inconsistencia de la autoridad en el manejo de estos conceptos en el CFDI.
Desde agosto de 2012 Fiscalia había expuesto una inconsistencia de la autoridad en el manejo de estos conceptos en el CFDI.
En la nueva versión se invierten los datos que deben ir en “Método de pago” y en “Forma de pago”, como se señala a continuación. De esta manera tiene coherencia con la terminología utilizada en el Código Fiscal de la Federación, pues de la forma en que estaba anteriormente no había concordancia.
VERSION 3.2
|
VERSION 3.3
|
MetodoDePago: Se señala la leyenda del método de pago como: cheque, tarjeta, depósito, etc.
|
MetodoPago: Se precisa la clave del método de pago, esto es si es pago en parcialidades o en una sola exhibición.
|
FormaDePago: Se utiliza para expresar Pago en una sola exhibición o número de parcialidad pagada contra el total de parcialidades, Parcialidad 1 de X
|
FormaPago: expresar la clave de la forma de pago de los bienes o servicios amparados por el comprobante. Si no se conoce la forma de pago este atributo se debe omitir (01 Efectivo, 02 Cheque nominativo, 03 Transferencia electronica de fondos, 04 Tarjeta de credito, 28 Tarjeta de debito)
|
jueves, 16 de marzo de 2017
Contabilidad: Regimes Fiscales SAT - Personas Fisicas.
Persona Física con Actividad Empresarial y Profesional:
Contabilidad: Contpaqi v 9.3.0
Version 9.3
Fecha de lanzamiento: 15 de Marzo de 2017.
Servidor Contpaq #1
Servidor Contpaq #2
Carta tecnica Contabilidad Bancos 9.3.0
sábado, 11 de marzo de 2017
Informatica: Hoja de MS Excel protegida por contraseña
El codigo VBA para poder descubrir cual es la contraseña que protege la hoja de MS Excel que deseamos, es el siguiente:
Sub Revelar_contraseña()
Dim a As Integer, b As Integer, c As Integer
Dim d As Integer, e As Integer, f As Integer
Dim a1 As Integer, a2 As Integer, a3 As Integer
Dim a4 As Integer, a5 As Integer, a6 As Integer
On Error Resume Next
For a = 65 To 66: For b = 65 To 66: For c = 65 To 66
For d = 65 To 66: For e = 65 To 66: For a1 = 65 To 66
For a2 = 65 To 66: For a3 = 65 To 66: For a4 = 65 To 66
For a5 = 65 To 66: For a6 = 65 To 66: For f = 32 To 126
Contraseña = Chr(a) & Chr(b) & Chr(c) & Chr(d) & Chr(e) & Chr(a1) _
& Chr(a2) & Chr(a3) & Chr(a4) & Chr(a5) & Chr(a6) & Chr(f)
ActiveSheet.Unprotect Contraseña
If ActiveSheet.ProtectContents = False Then
MsgBox "¡Felicidades!" & vbCr & "La contraseña es:" & vbCr & Contraseña
Exit Sub
End If
Next: Next: Next: Next: Next: Next
Next: Next: Next: Next: Next: Next
End Sub
Ejecutar el codigo VBA desde el editor VBA y les aparecera en una ventana la contraseña de la hoja abierta de Microsoft Excel.
Probado en MS Office 2016 con Windows 10.
Codigo 2: Mas tardado
Public Sub AllInternalPasswords()
' Breaks worksheet and workbook structure passwords. Bob McCormick
' probably originator of base code algorithm modified for coverage
' of workbook structure / windows passwords and for multiple passwords
'
' Norman Harker and JE McGimpsey 27-Dec-2002 (Version 1.1)
' Modified 2003-Apr-04 by JEM: All msgs to constants, and
' eliminate one Exit Sub (Version 1.1.1)
' Reveals hashed passwords NOT original passwords
Const DBLSPACE As String = vbNewLine & vbNewLine
Const AUTHORS As String = DBLSPACE & vbNewLine & _
"Adapted from Bob McCormick base code by" & _
"Norman Harker and JE McGimpsey"
Const HEADER As String = "AllInternalPasswords User Message"
Const VERSION As String = DBLSPACE & "Version 1.1.1 2003-Apr-04"
Const REPBACK As String = DBLSPACE & "Please report failure " & _
"to the microsoft.public.excel.programming newsgroup."
Const ALLCLEAR As String = DBLSPACE & "The workbook should " & _
"now be free of all password protection, so make sure you:" & _
DBLSPACE & "SAVE IT NOW!" & DBLSPACE & "and also" & _
DBLSPACE & "BACKUP!, BACKUP!!, BACKUP!!!" & _
DBLSPACE & "Also, remember that the password was " & _
"put there for a reason. Don't stuff up crucial formulas " & _
"or data." & DBLSPACE & "Access and use of some data " & _
"may be an offense. If in doubt, don't."
Const MSGNOPWORDS1 As String = "There were no passwords on " & _
"sheets, or workbook structure or windows." & AUTHORS & VERSION
Const MSGNOPWORDS2 As String = "There was no protection to " & _
"workbook structure or windows." & DBLSPACE & _
"Proceeding to unprotect sheets." & AUTHORS & VERSION
Const MSGTAKETIME As String = "After pressing OK button this " & _
"will take some time." & DBLSPACE & "Amount of time " & _
"depends on how many different passwords, the " & _
"passwords, and your computer's specification." & DBLSPACE & _
"Just be patient! Make me a coffee!" & AUTHORS & VERSION
Const MSGPWORDFOUND1 As String = "You had a Worksheet " & _
"Structure or Windows Password set." & DBLSPACE & _
"The password found was: " & DBLSPACE & "$$" & DBLSPACE & _
"Note it down for potential future use in other workbooks by " & _
"the same person who set this password." & DBLSPACE & _
"Now to check and clear other passwords." & AUTHORS & VERSION
Const MSGPWORDFOUND2 As String = "You had a Worksheet " & _
"password set." & DBLSPACE & "The password found was: " & _
DBLSPACE & "$$" & DBLSPACE & "Note it down for potential " & _
"future use in other workbooks by same person who " & _
"set this password." & DBLSPACE & "Now to check and clear " & _
"other passwords." & AUTHORS & VERSION
Const MSGONLYONE As String = "Only structure / windows " & _
"protected with the password that was just found." & _
ALLCLEAR & AUTHORS & VERSION & REPBACK
Dim w1 As Worksheet, w2 As Worksheet
Dim i As Integer, j As Integer, k As Integer, l As Integer
Dim m As Integer, n As Integer, i1 As Integer, i2 As Integer
Dim i3 As Integer, i4 As Integer, i5 As Integer, i6 As Integer
Dim PWord1 As String
Dim ShTag As Boolean, WinTag As Boolean
Application.ScreenUpdating = False
With ActiveWorkbook
WinTag = .ProtectStructure Or .ProtectWindows
End With
ShTag = False
For Each w1 In Worksheets
ShTag = ShTag Or w1.ProtectContents
Next w1
If Not ShTag And Not WinTag Then
MsgBox MSGNOPWORDS1, vbInformation, HEADER
Exit Sub
End If
MsgBox MSGTAKETIME, vbInformation, HEADER
If Not WinTag Then
MsgBox MSGNOPWORDS2, vbInformation, HEADER
Else
On Error Resume Next
Do 'dummy do loop
For i = 65 To 66: For j = 65 To 66: For k = 65 To 66
For l = 65 To 66: For m = 65 To 66: For i1 = 65 To 66
For i2 = 65 To 66: For i3 = 65 To 66: For i4 = 65 To 66
For i5 = 65 To 66: For i6 = 65 To 66: For n = 32 To 126
With ActiveWorkbook
.Unprotect Chr(i) & Chr(j) & Chr(k) & _
Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & _
Chr(i3) & Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)
If .ProtectStructure = False And _
.ProtectWindows = False Then
PWord1 = Chr(i) & Chr(j) & Chr(k) & Chr(l) & _
Chr(m) & Chr(i1) & Chr(i2) & Chr(i3) & _
Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)
MsgBox Application.Substitute(MSGPWORDFOUND1, _
"$$", PWord1), vbInformation, HEADER
Exit Do 'Bypass all for...nexts
End If
End With
Next: Next: Next: Next: Next: Next
Next: Next: Next: Next: Next: Next
Loop Until True
On Error GoTo 0
End If
If WinTag And Not ShTag Then
MsgBox MSGONLYONE, vbInformation, HEADER
Exit Sub
End If
On Error Resume Next
For Each w1 In Worksheets
'Attempt clearance with PWord1
w1.Unprotect PWord1
Next w1
On Error GoTo 0
ShTag = False
For Each w1 In Worksheets
'Checks for all clear ShTag triggered to 1 if not.
ShTag = ShTag Or w1.ProtectContents
Next w1
If ShTag Then
For Each w1 In Worksheets
With w1
If .ProtectContents Then
On Error Resume Next
Do 'Dummy do loop
For i = 65 To 66: For j = 65 To 66: For k = 65 To 66
For l = 65 To 66: For m = 65 To 66: For i1 = 65 To 66
For i2 = 65 To 66: For i3 = 65 To 66: For i4 = 65 To 66
For i5 = 65 To 66: For i6 = 65 To 66: For n = 32 To 126
.Unprotect Chr(i) & Chr(j) & Chr(k) & _
Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & Chr(i3) & _
Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)
If Not .ProtectContents Then
PWord1 = Chr(i) & Chr(j) & Chr(k) & Chr(l) & _
Chr(m) & Chr(i1) & Chr(i2) & Chr(i3) & _
Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)
MsgBox Application.Substitute(MSGPWORDFOUND2, _
"$$", PWord1), vbInformation, HEADER
'leverage finding Pword by trying on other sheets
For Each w2 In Worksheets
w2.Unprotect PWord1
Next w2
Exit Do 'Bypass all for...nexts
End If
Next: Next: Next: Next: Next: Next
Next: Next: Next: Next: Next: Next
Loop Until True
On Error GoTo 0
End If
End With
Next w1
End If
MsgBox ALLCLEAR & AUTHORS & VERSION & REPBACK, vbInformation, HEADER
End Sub
Codigo 2: Mas tardado
Public Sub AllInternalPasswords()
' Breaks worksheet and workbook structure passwords. Bob McCormick
' probably originator of base code algorithm modified for coverage
' of workbook structure / windows passwords and for multiple passwords
'
' Norman Harker and JE McGimpsey 27-Dec-2002 (Version 1.1)
' Modified 2003-Apr-04 by JEM: All msgs to constants, and
' eliminate one Exit Sub (Version 1.1.1)
' Reveals hashed passwords NOT original passwords
Const DBLSPACE As String = vbNewLine & vbNewLine
Const AUTHORS As String = DBLSPACE & vbNewLine & _
"Adapted from Bob McCormick base code by" & _
"Norman Harker and JE McGimpsey"
Const HEADER As String = "AllInternalPasswords User Message"
Const VERSION As String = DBLSPACE & "Version 1.1.1 2003-Apr-04"
Const REPBACK As String = DBLSPACE & "Please report failure " & _
"to the microsoft.public.excel.programming newsgroup."
Const ALLCLEAR As String = DBLSPACE & "The workbook should " & _
"now be free of all password protection, so make sure you:" & _
DBLSPACE & "SAVE IT NOW!" & DBLSPACE & "and also" & _
DBLSPACE & "BACKUP!, BACKUP!!, BACKUP!!!" & _
DBLSPACE & "Also, remember that the password was " & _
"put there for a reason. Don't stuff up crucial formulas " & _
"or data." & DBLSPACE & "Access and use of some data " & _
"may be an offense. If in doubt, don't."
Const MSGNOPWORDS1 As String = "There were no passwords on " & _
"sheets, or workbook structure or windows." & AUTHORS & VERSION
Const MSGNOPWORDS2 As String = "There was no protection to " & _
"workbook structure or windows." & DBLSPACE & _
"Proceeding to unprotect sheets." & AUTHORS & VERSION
Const MSGTAKETIME As String = "After pressing OK button this " & _
"will take some time." & DBLSPACE & "Amount of time " & _
"depends on how many different passwords, the " & _
"passwords, and your computer's specification." & DBLSPACE & _
"Just be patient! Make me a coffee!" & AUTHORS & VERSION
Const MSGPWORDFOUND1 As String = "You had a Worksheet " & _
"Structure or Windows Password set." & DBLSPACE & _
"The password found was: " & DBLSPACE & "$$" & DBLSPACE & _
"Note it down for potential future use in other workbooks by " & _
"the same person who set this password." & DBLSPACE & _
"Now to check and clear other passwords." & AUTHORS & VERSION
Const MSGPWORDFOUND2 As String = "You had a Worksheet " & _
"password set." & DBLSPACE & "The password found was: " & _
DBLSPACE & "$$" & DBLSPACE & "Note it down for potential " & _
"future use in other workbooks by same person who " & _
"set this password." & DBLSPACE & "Now to check and clear " & _
"other passwords." & AUTHORS & VERSION
Const MSGONLYONE As String = "Only structure / windows " & _
"protected with the password that was just found." & _
ALLCLEAR & AUTHORS & VERSION & REPBACK
Dim w1 As Worksheet, w2 As Worksheet
Dim i As Integer, j As Integer, k As Integer, l As Integer
Dim m As Integer, n As Integer, i1 As Integer, i2 As Integer
Dim i3 As Integer, i4 As Integer, i5 As Integer, i6 As Integer
Dim PWord1 As String
Dim ShTag As Boolean, WinTag As Boolean
Application.ScreenUpdating = False
With ActiveWorkbook
WinTag = .ProtectStructure Or .ProtectWindows
End With
ShTag = False
For Each w1 In Worksheets
ShTag = ShTag Or w1.ProtectContents
Next w1
If Not ShTag And Not WinTag Then
MsgBox MSGNOPWORDS1, vbInformation, HEADER
Exit Sub
End If
MsgBox MSGTAKETIME, vbInformation, HEADER
If Not WinTag Then
MsgBox MSGNOPWORDS2, vbInformation, HEADER
Else
On Error Resume Next
Do 'dummy do loop
For i = 65 To 66: For j = 65 To 66: For k = 65 To 66
For l = 65 To 66: For m = 65 To 66: For i1 = 65 To 66
For i2 = 65 To 66: For i3 = 65 To 66: For i4 = 65 To 66
For i5 = 65 To 66: For i6 = 65 To 66: For n = 32 To 126
With ActiveWorkbook
.Unprotect Chr(i) & Chr(j) & Chr(k) & _
Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & _
Chr(i3) & Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)
If .ProtectStructure = False And _
.ProtectWindows = False Then
PWord1 = Chr(i) & Chr(j) & Chr(k) & Chr(l) & _
Chr(m) & Chr(i1) & Chr(i2) & Chr(i3) & _
Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)
MsgBox Application.Substitute(MSGPWORDFOUND1, _
"$$", PWord1), vbInformation, HEADER
Exit Do 'Bypass all for...nexts
End If
End With
Next: Next: Next: Next: Next: Next
Next: Next: Next: Next: Next: Next
Loop Until True
On Error GoTo 0
End If
If WinTag And Not ShTag Then
MsgBox MSGONLYONE, vbInformation, HEADER
Exit Sub
End If
On Error Resume Next
For Each w1 In Worksheets
'Attempt clearance with PWord1
w1.Unprotect PWord1
Next w1
On Error GoTo 0
ShTag = False
For Each w1 In Worksheets
'Checks for all clear ShTag triggered to 1 if not.
ShTag = ShTag Or w1.ProtectContents
Next w1
If ShTag Then
For Each w1 In Worksheets
With w1
If .ProtectContents Then
On Error Resume Next
Do 'Dummy do loop
For i = 65 To 66: For j = 65 To 66: For k = 65 To 66
For l = 65 To 66: For m = 65 To 66: For i1 = 65 To 66
For i2 = 65 To 66: For i3 = 65 To 66: For i4 = 65 To 66
For i5 = 65 To 66: For i6 = 65 To 66: For n = 32 To 126
.Unprotect Chr(i) & Chr(j) & Chr(k) & _
Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & Chr(i3) & _
Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)
If Not .ProtectContents Then
PWord1 = Chr(i) & Chr(j) & Chr(k) & Chr(l) & _
Chr(m) & Chr(i1) & Chr(i2) & Chr(i3) & _
Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)
MsgBox Application.Substitute(MSGPWORDFOUND2, _
"$$", PWord1), vbInformation, HEADER
'leverage finding Pword by trying on other sheets
For Each w2 In Worksheets
w2.Unprotect PWord1
Next w2
Exit Do 'Bypass all for...nexts
End If
Next: Next: Next: Next: Next: Next
Next: Next: Next: Next: Next: Next
Loop Until True
On Error GoTo 0
End If
End With
Next w1
End If
MsgBox ALLCLEAR & AUTHORS & VERSION & REPBACK, vbInformation, HEADER
End Sub
Suscribirse a:
Entradas (Atom)
Reinstalar Contpaqi en caso de olvido de contraseña del SA
Desinstalar desde panel de control los programas: Contpaqi Contabilidad(Local) Conpaqi Formatos Digitales Contpaqi Administrador de Docu...
-
Clave SAT Descripción del Producto 15111700 Aditivo Bardhal 1 y 2 15121501 Aceite moto...
-
Probado en Microsoft Excel 2013 con Windows 10. Herramientas adicionales: Notepad++ 1.- Hacer una copia del archivo del cual dese...
-
Para cancelar el CFDI sin solicitar "permiso" o "autorización" al receptor siempre que se refieran a los siguientes c...