HWSW Informatikai Kerekasztal: Excel segítség! - HWSW Informatikai Kerekasztal

Ugrás a tartalomhoz

Mellékleteink: HUP | Gamekapocs

  • (63 Oldal)
  • +
  • « Első
  • 43
  • 44
  • 45
  • 46
  • 47
  • Utolsó »
  • Nem indíthatsz témát.
  • A téma zárva.

Excel segítség! Értékeld a témát: -----

#881 Felhasználó inaktív   illusion 

  • Tag
  • PipaPipa
  • Csoport: Fórumtag
  • Hozzászólások: 117
  • Csatlakozott: --

Elküldve: 2011. 03. 01. 08:33

Üzenet megtekintéseIdézet: Delila - Dátum: 2011. 03. 01. 07:21

illusion

A lenti makrót ahhoz a laphoz kell rendelned, amelyik lapon ezt az automatikus formázást létre akarod hozni. Lapfülön jobb klikk, Kódlap megjelenítése. A VB szerkesztőben jobb oldalon kapott üres lapra másold be.

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim uoszlop As Long
    If Target = "GTR" Then
        With Range(Target.Address)
            .Font.ColorIndex = 3
            .Font.Size = 12
        End With
        With Cells(Target.Row, Target.Column - 1)
            .Font.ColorIndex = 5
            .Font.Size = 10
        End With
    End If
    If Target = "Mici" Then
        uoszlop = Range(Target.Address).End(xlToRight).Column
        With Range(Cells(Target.Row, 1), Cells(Target.Row, uoszlop))
            .Borders(xlEdgeLeft).Weight = xlThin
            .Borders(xlEdgeRight).Weight = xlThin
            .Borders(xlEdgeTop).Weight = xlThin
            .Borders(xlEdgeBottom).Weight = xlThin
        End With
    End If
End Sub



Lehet, hogy valamit elszúrtam a két kódsor összevágásával, de nem működik....

Private Sub Worksheet_Change(ByVal Target As Range)
'feltételek (N oszlop, A érték)
If Target.Column = 14 And Target.Value = "A" Then
'a lapvédelem feloldása a makró futásának idejére
ActiveSheet.Unprotect Password:="Lacika"

'az aktuális sor zárolása
Rows(Target.Row).Locked = True

'lapvédelem beállításai
ActiveSheet.Protect Password:="Lacika", DrawingObjects:=True, _
Contents:=True, Scenarios:=True
End If
Dim uoszlop As Long
If Target = "GTR" Then
With Range(Target.Address)
.Font.ColorIndex = 3
.Font.Size = 12
End With
With Cells(Target.Row, Target.Column - 1)
.Font.ColorIndex = 5
.Font.Size = 10
End With
End If
If Target = "Mici" Then
uoszlop = Range(Target.Address).End(xlToRight).Column
With Range(Cells(Target.Row, 1), Cells(Target.Row, uoszlop))
.Borders(xlEdgeLeft).Weight = xlThin
.Borders(xlEdgeRight).Weight = xlThin
.Borders(xlEdgeTop).Weight = xlThin
.Borders(xlEdgeBottom).Weight = xlThin
End With
End If
End Sub

Szerkesztette: illusion 2011. 03. 01. 08:37 -kor


#882 Felhasználó inaktív   Delila 

  • Tag
  • PipaPipa
  • Csoport: Fórumtag
  • Hozzászólások: 376
  • Csatlakozott: --

Elküldve: 2011. 03. 01. 08:55

illusion

A GTR-es részben felcseréltem a két colorindexet. Az első With-ben legyen 5, a másodikban 3.
Program az, ami az adatokat hibaüzenetté konvertálja.
Link

#883 Felhasználó inaktív   Delila 

  • Tag
  • PipaPipa
  • Csoport: Fórumtag
  • Hozzászólások: 376
  • Csatlakozott: --

Elküldve: 2011. 03. 01. 08:58

illusion

A lapvédelmes részt és a sor zárolást a makró végére tedd. A makró elején letiltod a sor módosítását, ezért nem tud keretezni, színezni.

Írd le pontosan, mit is akarsz elérni. Ha az N oszlopba A kerül, akkor az legyen kék és 12-es betűnagyság, ugyanabban a sorban az M oszlop adata piros és 10-es méret, legyen bekeretezve a sor, és le is legyen tiltva?

Szerkesztette: Delila 2011. 03. 01. 09:09 -kor

Program az, ami az adatokat hibaüzenetté konvertálja.
Link

#884 Felhasználó inaktív   hkpk 

  • Senior tag
  • PipaPipaPipaPipa
  • Csoport: Fórumtag
  • Hozzászólások: 3.536
  • Csatlakozott: --

Elküldve: 2011. 03. 01. 10:34

Mivel lehet kikapcsolni az Excel 2007 "Kis mértékű funkció vesztés" panelját, ami XLS formába mentéskor jelentkezik? Soha nincs semmiféle hiányosság, de van néhány igen hosszú futásidejű makró, aminek végig kellene futnia, ehelyett pár mentés alkalmával megjelenik a funkcióvesztés panel, és le kell OK-zni...
Van olyan makróparancs, ami ezt kikapcsolja?

#885 Felhasználó inaktív   illusion 

  • Tag
  • PipaPipa
  • Csoport: Fórumtag
  • Hozzászólások: 117
  • Csatlakozott: --

Elküldve: 2011. 03. 01. 15:16

Üzenet megtekintéseIdézet: Delila - Dátum: 2011. 03. 01. 07:58

illusion

A lapvédelmes részt és a sor zárolást a makró végére tedd. A makró elején letiltod a sor módosítását, ezért nem tud keretezni, színezni.

Írd le pontosan, mit is akarsz elérni. Ha az N oszlopba A kerül, akkor az legyen kék és 12-es betűnagyság, ugyanabban a sorban az M oszlop adata piros és 10-es méret, legyen bekeretezve a sor, és le is legyen tiltva?


Jó lesz, csak hibát jelez a colorindexnél:
Kép

Ha félkövér betűt szeretnék annak mi a kódja?

Szerkesztette: illusion 2011. 03. 01. 15:18 -kor


#886 Felhasználó inaktív   illusion 

  • Tag
  • PipaPipa
  • Csoport: Fórumtag
  • Hozzászólások: 117
  • Csatlakozott: --

Elküldve: 2011. 03. 01. 16:09

Üzenet megtekintéseIdézet: illusion - Dátum: 2011. 03. 01. 14:16

Jó lesz, csak hibát jelez a colorindexnél:
Kép

Ha félkövér betűt szeretnék annak mi a kódja?


Valószínűleg a lapvédelemnél lehet a hiba oka, mert ha feloldom, akkor működik. Ha bekapcsolom, akkor rögtön hibát jelez a makrónál. A teljes makró ilyen lett:

Private Sub Worksheet_Change(ByVal Target As Range)

Dim uoszlop As Long
If Target = "GTR" Then
With Range(Target.Address)
.Font.ColorIndex = 3
.Font.Size = 12
End With
With Cells(Target.Row, Target.Column + 1)
.Font.ColorIndex = 5
.Font.Size = 10
End With
With Cells(Target.Row, Target.Column - 1)
.Font.ColorIndex = 5
.Font.Size = 10
End With
End If
If Target = "Mici" Then
uoszlop = Range(Target.Address).End(xlToRight).Column
With Range(Cells(Target.Row, 1), Cells(Target.Row, uoszlop))
'.Borders(xlEdgeLeft).Weight = xlThin
'.Borders(xlEdgeRight).Weight = xlThin
'.Borders(xlEdgeTop).Weight = xlThin
'.Borders(xlEdgeBottom).Weight = xlThin
'aktív cella sorának háttérszíne
'.Interior.ColorIndex = 20
End With
End If
'feltételek (N oszlop, A érték)
If Target.Column = 14 And Target.Value = "A" Then
'a lapvédelem feloldása a makró futásának idejére
ActiveSheet.Unprotect Password:="Lacika"

'az aktuális sor zárolása
Rows(Target.Row).Locked = True

'lapvédelem beállításai
ActiveSheet.Protect Password:="Lacika", DrawingObjects:=True, _
Contents:=True, Scenarios:=True
End If
End Sub

#887 Felhasználó inaktív   Delila 

  • Tag
  • PipaPipa
  • Csoport: Fórumtag
  • Hozzászólások: 376
  • Csatlakozott: --

Elküldve: 2011. 03. 01. 18:29

illusion

Az második sorod, a Dim után ez legyen:
ActiveSheet.Protect Password:="Lacika", UserInterfaceOnly:=True

Ez engedélyezi a makróból indított változások végrehajtását. A makró végén azért szükséges újra védetté tenni a lapot, mert bár a futás befejeztével újra védett lenne anélkül is a lap, a jelszó lemarad.
Program az, ami az adatokat hibaüzenetté konvertálja.
Link

#888 Felhasználó inaktív   illusion 

  • Tag
  • PipaPipa
  • Csoport: Fórumtag
  • Hozzászólások: 117
  • Csatlakozott: --

Elküldve: 2011. 03. 01. 18:42

Üzenet megtekintéseIdézet: Delila - Dátum: 2011. 03. 01. 17:29

illusion

Az második sorod, a Dim után ez legyen:
ActiveSheet.Protect Password:="Lacika", UserInterfaceOnly:=True

Ez engedélyezi a makróból indított változások végrehajtását. A makró végén azért szükséges újra védetté tenni a lapot, mert bár a futás befejeztével újra védett lenne anélkül is a lap, a jelszó lemarad.


Örök hálám!
:respect: :respect: :respect:

Szerkesztette: illusion 2011. 03. 01. 18:42 -kor


#889 Felhasználó inaktív   Delila 

  • Tag
  • PipaPipa
  • Csoport: Fórumtag
  • Hozzászólások: 376
  • Csatlakozott: --

Elküldve: 2011. 03. 02. 06:59

illusion

:)
Program az, ami az adatokat hibaüzenetté konvertálja.
Link

#890 Felhasználó inaktív   Delila 

  • Tag
  • PipaPipa
  • Csoport: Fórumtag
  • Hozzászólások: 376
  • Csatlakozott: --

Elküldve: 2011. 03. 02. 12:48

illusion

Idézet

Ha félkövér betűt szeretnék annak mi a kódja?

selection.font.bold = true
Program az, ami az adatokat hibaüzenetté konvertálja.
Link

#891 Felhasználó inaktív   illusion 

  • Tag
  • PipaPipa
  • Csoport: Fórumtag
  • Hozzászólások: 117
  • Csatlakozott: --

Elküldve: 2011. 03. 02. 22:08

Üzenet megtekintéseIdézet: Delila - Dátum: 2011. 03. 02. 11:48

illusion


selection.font.bold = true



Szuper vagy! Köszönöm!

#892 Felhasználó inaktív   Delila 

  • Tag
  • PipaPipa
  • Csoport: Fórumtag
  • Hozzászólások: 376
  • Csatlakozott: --

Elküldve: 2011. 03. 03. 17:48

Üzenet megtekintéseIdézet: hkpk - Dátum: 2011. 03. 01. 10:34

Mivel lehet kikapcsolni az Excel 2007 "Kis mértékű funkció vesztés" panelját, ami XLS formába mentéskor jelentkezik? Soha nincs semmiféle hiányosság, de van néhány igen hosszú futásidejű makró, aminek végig kellene futnia, ehelyett pár mentés alkalmával megjelenik a funkcióvesztés panel, és le kell OK-zni...
Van olyan makróparancs, ami ezt kikapcsolja?


Ha csak a kérdést akarod kikapcsolni, az Application.DisplayAlerts=False valószínűleg jó lesz, csak az end sub előtt kapcsold vissza.
Program az, ami az adatokat hibaüzenetté konvertálja.
Link

#893 Felhasználó inaktív   hkpk 

  • Senior tag
  • PipaPipaPipaPipa
  • Csoport: Fórumtag
  • Hozzászólások: 3.536
  • Csatlakozott: --

Elküldve: 2011. 03. 04. 22:41

Üzenet megtekintéseIdézet: Delila - Dátum: 2011. 03. 03. 17:48

Ha csak a kérdést akarod kikapcsolni, az Application.DisplayAlerts=False valószínűleg jó lesz, csak az end sub előtt kapcsold vissza.

Hát, kösz minden esetre, ugyan használom a fenti parancsot sok helyen, de erre nem jutott eszembe, ez nem olyan forma üzenet, de tkp. kiböktem teljesen, hogy többet ne jelenjen meg, azt meg nem tudom, hol kell visszakapcsolni :-)

#894 Felhasználó inaktív   Delila 

  • Tag
  • PipaPipa
  • Csoport: Fórumtag
  • Hozzászólások: 376
  • Csatlakozott: --

Elküldve: 2011. 03. 05. 14:08

Üzenet megtekintéseIdézet: hkpk - Dátum: 2011. 03. 04. 22:41

Hát, kösz minden esetre, ugyan használom a fenti parancsot sok helyen, de erre nem jutott eszembe, ez nem olyan forma üzenet, de tkp. kiböktem teljesen, hogy többet ne jelenjen meg, azt meg nem tudom, hol kell visszakapcsolni :-)


Az End Sub előtt Application.DisplayAlerts=True
Program az, ami az adatokat hibaüzenetté konvertálja.
Link

#895 Felhasználó inaktív   hkpk 

  • Senior tag
  • PipaPipaPipaPipa
  • Csoport: Fórumtag
  • Hozzászólások: 3.536
  • Csatlakozott: --

Elküldve: 2011. 03. 05. 19:29

Üzenet megtekintéseIdézet: Delila - Dátum: 2011. 03. 05. 14:08

Az End Sub előtt Application.DisplayAlerts=True

Nem hiszem, majd megnézem. A panelen van egy checkbox, hogy többé ne jelenjen meg ez az üzenet, ott böktem ki...

#896 Felhasználó inaktív   PoHoS 

  • Újonc
  • Pipa
  • Csoport: Alkalmi fórumtag
  • Hozzászólások: 85
  • Csatlakozott: --

Elküldve: 2011. 03. 05. 23:32

Üzenet megtekintéseIdézet: hkpk - Dátum: 2011. 03. 05. 19:29

Nem hiszem, majd megnézem. A panelen van egy checkbox, hogy többé ne jelenjen meg ez az üzenet, ott böktem ki...


Office gomb \ Előkészítés \ Kompatibilitás ellenőrzése panelen elméletileg megvan a lehetőség a visszakapcsolásra.
A jó kolléga nem csak ígér, hanem be is tart.
D3 Battle Tag: PoHoS#2375

#897 Felhasználó inaktív   üzletkötő 

  • Újonc
  • Pipa
  • Csoport: Alkalmi fórumtag
  • Hozzászólások: 1
  • Csatlakozott: --

Elküldve: 2011. 03. 07. 13:48

Sziasztok,

látom, nagyon sok segítség született már itt, nekem is arra lenne szükségem.

Van egy exceltáblám, ahol az egyik munkalapon van egy felsorolás, üzletpartnerek (vásárlók) neve, ez van az egyik oszlopban. Egy mellette levő oszlopba a besorolásuk került, vásárlási mennyiség alapján kaptak egy kategóriát, számmal, 1-6-ig. Egy másik munkalapon csináltam egy legördülő listát, ahol kiválaszthatom a partnereket, és azt szeretném, hogy a kiválasztott partner mellé egy másik cellába odakerüljön a kategóriája a kiválasztást követően. Ezt hogy tudom megoldani? Utána a kategória alapján kapja meg az árat a termékre, de ezt már meg tudom oldani.

#898 Felhasználó inaktív   hkpk 

  • Senior tag
  • PipaPipaPipaPipa
  • Csoport: Fórumtag
  • Hozzászólások: 3.536
  • Csatlakozott: --

Elküldve: 2011. 03. 07. 15:55

Hali kérdeznék egy hozzáértő tudort, hogy van-e olyan beépített lehetősége
az Excelnek, ami a következő, ábrával illusztrált esetre megoldás.

Az kellene megoldani egy sorban adott oszlopig, hol van benne adott érték,
és e cella oszlopában a legfelső cella tartalmát adja vissza,
tehát az ábrán ahol a bal oldalon A;B;C;D;E;F oszlopokban 1-es van,
ott az afelett levő legfelső cellában levő betűt adja vissza.

30 perc keresgélés után feladtam, és összedobtam ezt a saját
függvényt:

Static Function top_cellaérték_ha(tartomány As Range, első_érték_amit_figyel)
For Each ciklus_cella In tartomány
  If ciklus_cella.Value = első_érték_amit_figyel Then
   top_cellaérték_ha = Cells(1, ciklus_cella.Column).Value
   Exit For
  End If
Next
End Function


A függvény tök jól működik, de kíváncsi volnék, hogy van-e erre "gyári" megoldás is?

Csatolt fájl:



#899 Felhasználó inaktív   hkpk 

  • Senior tag
  • PipaPipaPipaPipa
  • Csoport: Fórumtag
  • Hozzászólások: 3.536
  • Csatlakozott: --

Elküldve: 2011. 03. 07. 16:49

Üzenet megtekintéseIdézet: PoHoS - Dátum: 2011. 03. 05. 23:32

Office gomb \ Előkészítés \ Kompatibilitás ellenőrzése panelen elméletileg megvan a lehetőség a visszakapcsolásra.

Ja, meg egyébként:
ActiveWorkbook.CheckCompatibility = False
ActiveWorkbook.CheckCompatibility = True


Az az őrület, hogy ez a beállítás adott munkafüzetre vonatkozik, nem lehet globálisan ki vagy bekapcsolni.

#900 Felhasználó inaktív   Delila 

  • Tag
  • PipaPipa
  • Csoport: Fórumtag
  • Hozzászólások: 376
  • Csatlakozott: --

Elküldve: 2011. 03. 07. 17:24

hkpk

A H2 képlete: =KARAKTER(HOL.VAN(1;A2:F2;0)+64)
Ezt másolhatod le.
Program az, ami az adatokat hibaüzenetté konvertálja.
Link

Téma megosztása:


  • (63 Oldal)
  • +
  • « Első
  • 43
  • 44
  • 45
  • 46
  • 47
  • Utolsó »
  • Nem indíthatsz témát.
  • A téma zárva.

2 felhasználó olvassa ezt a témát.
0 felhasználó, 2 vendég, 0 anonim felhasználó