Makro na převod jednotek

Programy pro práci v kanceláři (Word, Excel, Access…=>Office)

Moderátor: Mods_senior

pavel_sch
nováček
Příspěvky: 2
Registrován: květen 14
Pohlaví: Muž
Stav:
Offline

Makro na převod jednotek

Příspěvekod pavel_sch » 19 kvě 2014 21:15

Dobrý den,
potřeboval bych poradit s tvorbou makra na převod jednotek.
V podstatě jde jenom o to vydělit všechny buňky, které mají ve formátování nastaveno "účetnický", buňkou, kterou mám na jiném listě.

A zároveň se chci zeptat, jestli to jde nějak zakomponovat i do kontingenční tabulky, tedy aby se mi při spuštění makra všechny hodnoty převedly do jiných jednotek?

Nevím jak moc složité to je nebo není, každopádně budu vděčný za případnou pomoc.

Reklama
lubo.
Level 2
Level 2
Příspěvky: 192
Registrován: červen 13
Pohlaví: Nespecifikováno
Stav:
Offline

Re: Makro na převod jednotek

Příspěvekod lubo. » 20 kvě 2014 01:23

Nestačí vzorec?

=KDYŽ(ZLEVA(POLÍČKO("formát";A1);1)="C";"Buňka na jiném listě";A1)

Do kont tabulky stačí potom přidat sloupec.

pavel_sch
nováček
Příspěvky: 2
Registrován: květen 14
Pohlaví: Muž
Stav:
Offline

Re: Makro na převod jednotek

Příspěvekod pavel_sch » 20 kvě 2014 07:38

Bohužel vzorec nestačí, změna jednotek není trvalá, a přidávat další sloupec se mi také nehodí, jelikož už tak je tabulka dost nafouklá, a přidávat další sloupce by jí udělalo ještě přifouklejší.

Přes záznam maker jsem došel k tomuto.
Sub EUR()
'
' EUR Makro
'

'
Columns("B:D").Select
Selection.NumberFormat = _
"_-* #,##0.00 [$€-1]_-;-* #,##0.00 [$€-1]_-;_-* ""-""?? [$€-1]_-;_-@_-"

End Sub

Což mi v podstatě změní znak měny, teď ještě nějak zakomponovat ono vydělení.
A také to více zobecnit. aby to nebyly předem nadefinované sloupce, ale ty které jsou formátované jako účetnické.

cmuch
Level 4.5
Level 4.5
Příspěvky: 1544
Registrován: březen 11
Bydliště: Drsná Vysočina :D
Pohlaví: Muž
Stav:
Offline

Re: Makro na převod jednotek

Příspěvekod cmuch » 30 čer 2014 20:46

Tady je makro co převede všechny sloupce které mají formát jako účetnický
na měnu která je zadaná v A1 a vydělí číslem co je zadané hned vedle v B1 (viz. makro)

Upozornění:
po překopírování do makra nejspíše bude znak libry jako L [$L-809], nahraď pomocí české klávesnice - pravýALT+L

Kód: Vybrat vše

Sub PrevodMeny()

' Prevod meny v sloupec aktivni list format ucetnictvi
'
  Dim clmNumFormatNew
  Dim clmSh As Range
  Dim vMena As Range
'
  For Each clmSh In ActiveSheet.Columns
    If InStr(Left(clmSh.NumberFormat, 1), "_") > 0 Then

      'co se ma nastavit jako mena (v bunce A1 vyberovy seznam /CZK/EUR/USD/GPD/ )
      clmNumFormatNew = Sheets("nastaveni").Cells(1, 1)
      'cim delit hodnoty aby byly pro novou menu [B1]
      Set vMena = Sheets("nastaveni").Cells(1, 2)
      vMena.Copy

      Select Case clmNumFormatNew
        Case "CZK"
          clmSh.PasteSpecial Paste:=xlPasteValues, Operation:=xlDivide, SkipBlanks:=False, Transpose:=False
          clmSh.NumberFormat = "_($* #,##0_);_($* (#,##0);_($* ""-""_);_(@_)"
        Case "EUR"
          clmSh.PasteSpecial Paste:=xlPasteValues, Operation:=xlDivide, SkipBlanks:=False, Transpose:=False
          clmSh.NumberFormat = "_-[$€-2] * #,##0.00_-;-[$€-2] * #,##0.00_-;_-[$€-2] * ""-""??_-;_-@_-"
        Case "USD"
          clmSh.PasteSpecial Paste:=xlPasteValues, Operation:=xlDivide, SkipBlanks:=False, Transpose:=False
          clmSh.NumberFormat = "_-[$$-409]* #,##0.00_ ;_-[$$-409]* -#,##0.00 ;_-[$$-409]* ""-""??_ ;_-@_ "
        Case "GPD"
          clmSh.PasteSpecial Paste:=xlPasteValues, Operation:=xlDivide, SkipBlanks:=False, Transpose:=False
          clmSh.NumberFormat = "_-[$£-809]* #,##0.00_ ;_-[$£-809]* -#,##0.00 ;_-[$£-809]* ""-""??_ ;_-@_ "
      End Select
    End If
  Next
  Application.CutCopyMode = False
  Cells(1, 1).Select
End Sub


  • Mohlo by vás zajímat
    Odpovědi
    Zobrazení
    Poslední příspěvek
  • Převod DVD do mkv, avi...
    od petrmet » 24 lis 2023 14:12 » v Multimédia (filmy, hudba, CDs/DVDs)
    23
    4945
    od petr22 Zobrazit poslední příspěvek
    25 lis 2023 19:59
  • Makro pro myš Rapture Python
    od mmmartin » 27 srp 2023 15:18 » v Problémy s hardwarem
    9
    1125
    od mmmartin Zobrazit poslední příspěvek
    29 srp 2023 16:47
  • Převod formatovaného textu na normalní.
    od BigSandy » 26 kvě 2023 07:27 » v Vše ostatní (sw)
    3
    1635
    od BigSandy Zobrazit poslední příspěvek
    26 kvě 2023 09:49

Zpět na “Kancelářské balíky”

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 5 hostů